name: mastodon is: mastodon description: Mastodon is a free, open-source social network server based on ActivityPub. version: 4.5.3 icon: https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/svg/mastodon.svg requires: - name: postgres - name: redis defaultConfig: namespace: mastodon externalDnsDomain: "{{ .cloud.domain }}" timezone: UTC image: ghcr.io/mastodon/mastodon:v4.5.3 streamingImage: ghcr.io/mastodon/mastodon-streaming:v4.5.3 domain: mastodon.{{ .cloud.domain }} locale: en singleUserMode: false # Database configuration dbHostname: "{{ .apps.postgres.host }}" dbPort: "{{ .apps.postgres.port }}" dbName: mastodon_production dbUsername: mastodon # Redis configuration redisHostname: "{{ .apps.redis.host }}" redisPort: "{{ .apps.redis.port }}" # Ports webPort: 3000 streamingPort: 4000 # Storage assetsStorage: 10Gi systemStorage: 100Gi # SMTP configuration smtp: enabled: "{{ .cloud.smtp.host | ternary true false }}" server: "{{ .cloud.smtp.host }}" port: "{{ .cloud.smtp.port }}" from: notifications@{{ .cloud.domain }} user: "{{ .cloud.smtp.user }}" authMethod: plain enableStarttls: auto tls: "{{ .cloud.smtp.tls }}" # TLS tlsSecretName: wildcard-wild-cloud-tls # Sidekiq configuration sidekiq: replicas: 1 concurrency: 25 defaultSecrets: - key: secretKeyBase default: "{{ random.AlphaNum 128 }}" - key: otpSecret default: "{{ random.AlphaNum 128 }}" - key: vapidPrivateKey # Generated by vapid-init-job.yaml on first deploy - key: vapidPublicKey # Generated by vapid-init-job.yaml on first deploy - key: activeRecordPrimaryKey default: "{{ random.AlphaNum 32 }}" - key: activeRecordDeterministicKey default: "{{ random.AlphaNum 32 }}" - key: activeRecordKeyDerivationSalt default: "{{ random.AlphaNum 32 }}" - key: dbPassword - key: smtpPassword requiredSecrets: - postgres.password - redis.password