Skip to content

Helm Values Reference

The PrepArr Helm chart deploys a complete media automation stack. Install it from the Helm repository or from a local checkout.

Terminal window
# From OCI registry
helm install media-stack oci://ghcr.io/robbeverhelst/charts/preparr --version <version> -f values.yaml
# From local checkout
helm install media-stack ./helm/preparr -f values.yaml

Find the chart on ArtifactHub.

ParameterDescriptionDefault
global.namespaceKubernetes namespace for all resourcespreparr
ParameterDescriptionDefault
preparr.image.repositoryPrepArr container imageghcr.io/robbeverhelst/preparr
preparr.image.tagImage taglatest
preparr.image.pullPolicyImage pull policyIfNotPresent
preparr.health.portHealth check server port9001
preparr.logLevelLog level (debug, info, warn, error)info
ParameterDescriptionDefault
postgresql.enabledDeploy PostgreSQLtrue
postgresql.image.repositoryPostgreSQL imagepostgres
postgresql.image.tagPostgreSQL version16-alpine
postgresql.auth.usernameDatabase superuserpostgres
postgresql.auth.passwordDatabase passwordpostgres123
postgresql.auth.databaseDefault databaseservarr
postgresql.service.typeService typeClusterIP
postgresql.service.portService port5432
postgresql.logDatabaseEnabledCreate a separate _log database for each Servarr instancetrue
postgresql.persistence.enabledEnable persistent volumefalse
postgresql.persistence.sizeVolume size8Gi
postgresql.persistence.storageClassStorage class""

Disable the built-in PostgreSQL and point to an external instance:

postgresql:
enabled: false
externalHost: "postgres.database.svc.cluster.local"
service:
port: 5432
auth:
username: "servarr_user"
password: "external-db-password"
database: "servarr"
ParameterDescriptionDefault
sonarr.enabledDeploy Sonarrtrue
sonarr.image.repositorySonarr imagelinuxserver/sonarr
sonarr.image.tagSonarr versionlatest
sonarr.apiKeyAPI key (auto-generated if omitted)
sonarr.adminPasswordAdmin passwordadminpass
sonarr.service.typeService typeNodePort
sonarr.service.webui.portWeb UI port8989
sonarr.service.webui.nodePortNodePort30989
sonarr.reconciliation.enabledEnable sidecar reconciliationtrue
sonarr.reconciliation.intervalReconciliation interval (seconds)30
sonarr.reconciliation.watchWatch config file for changestrue
sonarr.storage.tv.enabledCreate TV media PVCtrue
sonarr.storage.tv.sizePVC size50Gi
sonarr.configConfiguration as code (JSON structure)See values.yaml
ParameterDescriptionDefault
radarr.enabledDeploy Radarrtrue
radarr.image.repositoryRadarr imagelinuxserver/radarr
radarr.image.tagRadarr versionlatest
radarr.apiKeyAPI key (auto-generated if omitted)
radarr.adminPasswordAdmin passwordadminpass
radarr.service.typeService typeNodePort
radarr.service.webui.portWeb UI port7878
radarr.service.webui.nodePortNodePort30878
radarr.reconciliation.enabledEnable sidecar reconciliationtrue
radarr.reconciliation.intervalReconciliation interval (seconds)30
radarr.storage.movies.enabledCreate movie media PVCtrue
radarr.storage.movies.sizePVC size100Gi
ParameterDescriptionDefault
prowlarr.enabledDeploy Prowlarrtrue
prowlarr.image.repositoryProwlarr imagelinuxserver/prowlarr
prowlarr.image.tagProwlarr versionlatest
prowlarr.apiKeyAPI key (auto-generated if omitted)
prowlarr.adminPasswordAdmin passwordadminpass
prowlarr.service.typeService typeNodePort
prowlarr.service.webui.portWeb UI port9696
ParameterDescriptionDefault
qbittorrent.enabledDeploy qBittorrenttrue
qbittorrent.image.repositoryqBittorrent imagelinuxserver/qbittorrent
qbittorrent.image.tagqBittorrent versionlatest
qbittorrent.auth.usernameWeb UI usernameadmin
qbittorrent.auth.passwordWeb UI passwordadminpass
qbittorrent.service.typeService typeNodePort
qbittorrent.service.webui.portWeb UI port8080
global:
namespace: media
postgresql:
auth:
password: "db-password"
sonarr:
adminPassword: "sonarr-pass"
radarr:
adminPassword: "radarr-pass"
prowlarr:
adminPassword: "prowlarr-pass"
qbittorrent:
auth:
password: "qbit-pass"
radarr:
enabled: false
prowlarr:
enabled: false
sonarr:
enabled: true
adminPassword: "secure-password"
config:
rootFolders:
- path: "/tv"
downloadClients:
- name: "qBittorrent"
implementation: "QBittorrent"
fields:
- name: "host"
value: "qbittorrent"
- name: "port"
value: 8080
global:
namespace: media-prod
preparr:
image:
tag: "0.15.0" # Pin version
logLevel: info
postgresql:
persistence:
enabled: true
size: 20Gi
storageClass: "fast-ssd"
resources:
requests:
memory: "512Mi"
cpu: "250m"
limits:
memory: "1Gi"
cpu: "1000m"
sonarr:
service:
type: ClusterIP
storage:
tv:
size: 500Gi
storageClass: "network-nfs"
resources:
requests:
memory: "512Mi"
cpu: "250m"
limits:
memory: "1Gi"
cpu: "1000m"
reconciliation:
interval: 60
Terminal window
helm install media-stack oci://ghcr.io/robbeverhelst/charts/preparr --version <version> -f values.yaml
Terminal window
helm upgrade media-stack oci://ghcr.io/robbeverhelst/charts/preparr --version <version> -f values.yaml
Terminal window
helm uninstall media-stack
kubectl delete namespace preparr
Terminal window
# Lint chart
helm lint ./helm/preparr
# Dry run
helm install test oci://ghcr.io/robbeverhelst/charts/preparr --version <version> --dry-run --debug
# Template output (from local checkout)
helm template test ./helm/preparr > output.yaml