# Pixelfed Helm Chart {{ template "chart.versionBadge" . }} {{ template "chart.appVersionBadge" . }} {{ template "chart.description" . }} * [TLDR](#tldr) * [Preparation for installation](#preparation-for-installation) * [Actually installing the chart](#actually-installing-the-chart) * [Maintainers](#maintainers) * [Requirements](#requirements) * [Sources for included subcharts](#sources-for-included-subcharts) * [How to use persistence](#how-to-use-persistence) * [Values (helm parameters from values.yaml)](#values-helm-parameters-from-valuesyaml) ## TLDR ### Preparation for installation ```bash # add the chart repo to your helm repos helm repo add pixelfed https://small-hack.github.io/pixelfed-chart # download the values.yaml and edit it with your own values such as YOUR hostname # especially important are pixelfed.app.domain and pixelfed.mail settings helm show values pixelfed/pixelfed > values.yaml ``` Your `values.yaml` will need at least the following to start: ```yaml pixelfed: # app specific settings app: # -- This key is used by the Illuminate encrypter service and should # be set to a random, 32 character string, otherwise these encrypted strings # will not be safe. If you don't generate one, we'll generate one for you # however it will change everytime you upgrade the helm chart, so it should # only be used for testing. In production, please set this, or pixelfed.app.existingSecret key: "" # -- use an existing Kuberentes Secret to store the app key # If set, ignores pixelfed.app.key existingSecret: "" # -- key in pixelfed.app.existingSecret to use for the app key existingSecretKey: "" # -- The name of your server/instance name: "Pixelfed" # -- change this to the domain of your pixelfed instance url: "https://localhost" # -- The domain of your server, without https:// domain: "" # Mail Configuration (Post-Installer) mail: # -- mail server hostname host: smtp.mailtrap.io # -- mail server username username: "" # -- mail server password password: "" # -- address to use for sending emails from_address: "pixelfed@example.com" # -- name to use for sending emails from_name: "Pixelfed" # -- name of an existing Kubernetes Secret for mail credentials existingSecret: "" # keys in existing secret existingSecretKeys: # -- key in existing Kubernetes Secret for host. If set, ignores mail.host host: "" # -- key in existing Kubernetes Secret for port. If set, ignores mail.port port: "" # -- key in existing Kubernetes Secret for username. If set, ignores mail.username username: "" # -- key in existing Kubernetes Secret for password. If set, ignores mail.password password: "" ``` ### Actually installing the chart ```bash # install the chart helm install --namespace pixelfed --create-namespace pixelfed/pixelfed --values values.yaml ``` ## Maintainers {{ template "chart.maintainersTable" . }} ## Requirements These are all subcharts that you can choose to install, but you can also bring your own: {{ template "chart.requirementsTable" . }} ### Sources for included subcharts - https://github.com/bitnami/charts/tree/main/bitnami/valkey - https://github.com/bitnami/charts/tree/main/bitnami/mariadb - https://github.com/bitnami/charts/tree/main/bitnami/postgresql ## How to use persistence This chart has the option to use PVCs (Persistent Volume Claims) for storing data on pod restarts. ```yaml persistence: # -- enable persistence for the pixelfed pod enabled: false # -- storage class name storageClassName: "" # -- size of the persistent volume claim to create. Tgnored if persistence.existingClaim is set storage: 2Gi # -- accessMode accessModes: - ReadWriteOnce # -- using an existing PVC instead of creating one with this chart existingClaim: "" ``` ## Values (helm parameters from values.yaml) {{ template "chart.valuesSection" . }}