You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

186 lines
5.1 KiB

  1. replicaCount: 1
  2. image:
  3. repository: tootsuite/mastodon
  4. # https://hub.docker.com/r/tootsuite/mastodon/tags
  5. #
  6. # alternatively, use `latest` for the latest release or `edge` for the image
  7. # built from the most recent commit
  8. #
  9. # tag: latest
  10. tag: v3.3.0
  11. # use `Always` when using `latest` tag
  12. pullPolicy: IfNotPresent
  13. mastodon:
  14. # create an initial administrator user; the password is autogenerated and will
  15. # have to be reset
  16. createAdmin:
  17. enabled: false
  18. username: not_gargron
  19. email: not@example.com
  20. cron:
  21. # run `tootctl media remove` every week
  22. removeMedia:
  23. enabled: true
  24. schedule: "0 0 * * 0"
  25. # available locales: https://github.com/tootsuite/mastodon/blob/master/config/application.rb#L43
  26. locale: en
  27. local_domain: mastodon.local
  28. persistence:
  29. assets:
  30. # ReadWriteOnce is more widely supported than ReadWriteMany, but limits
  31. # scalability, since it requires the Rails and Sidekiq pods to run on the
  32. # same node.
  33. accessMode: ReadWriteOnce
  34. resources:
  35. requests:
  36. storage: 10Gi
  37. system:
  38. accessMode: ReadWriteOnce
  39. resources:
  40. requests:
  41. storage: 100Gi
  42. s3:
  43. enabled: false
  44. access_key: ""
  45. access_secret: ""
  46. bucket: ""
  47. endpoint: https://us-east-1.linodeobjects.com
  48. hostname: us-east-1.linodeobjects.com
  49. region: ""
  50. # these must be set manually; autogenerated keys are rotated on each upgrade
  51. secrets:
  52. secret_key_base: ""
  53. otp_secret: ""
  54. vapid:
  55. private_key: ""
  56. public_key: ""
  57. sidekiq:
  58. concurrency: 25
  59. smtp:
  60. auth_method: plain
  61. ca_file: /etc/ssl/certs/ca-certificates.crt
  62. delivery_method: smtp
  63. domain:
  64. enable_starttls_auto: true
  65. from_address: notifications@example.com
  66. login:
  67. openssl_verify_mode: peer
  68. password:
  69. port: 587
  70. reply_to:
  71. server: smtp.mailgun.org
  72. tls: false
  73. streaming:
  74. port: 4000
  75. # this should be set manually since os.cpus() returns the number of CPUs on
  76. # the node running the pod, which is unrelated to the resources allocated to
  77. # the pod by k8s
  78. workers: 1
  79. web:
  80. port: 3000
  81. ingress:
  82. enabled: true
  83. annotations:
  84. kubernetes.io/ingress.class: nginx
  85. kubernetes.io/tls-acme: "true"
  86. # cert-manager.io/cluster-issuer: "letsencrypt"
  87. #
  88. # ensure that NGINX's upload size matches Mastodon's
  89. # for the K8s ingress controller:
  90. # nginx.ingress.kubernetes.io/proxy-body-size: 40m
  91. # for the NGINX ingress controller:
  92. # nginx.org/client-max-body-size: 40m
  93. hosts:
  94. - host: mastodon.local
  95. paths:
  96. - path: '/'
  97. tls:
  98. - secretName: mastodon-tls
  99. hosts:
  100. - mastodon.local
  101. # https://github.com/bitnami/charts/tree/master/bitnami/elasticsearch#parameters
  102. elasticsearch:
  103. # `false` will disable full-text search
  104. #
  105. # if you enable ES after the initial install, you will need to manually run
  106. # RAILS_ENV=production bundle exec rake chewy:sync
  107. # (https://docs.joinmastodon.org/admin/optional/elasticsearch/)
  108. enabled: true
  109. # may be removed once https://github.com/tootsuite/mastodon/pull/13828 is part
  110. # of a tagged release
  111. image:
  112. tag: 6
  113. # https://github.com/bitnami/charts/tree/master/bitnami/postgresql#parameters
  114. postgresql:
  115. # disable if you want to use an existing db; in which case the values below
  116. # must match those of that external postgres instance
  117. enabled: true
  118. # postgresqlHostname: preexisting-postgresql
  119. postgresqlDatabase: mastodon_production
  120. # you must set a password; the password generated by the postgresql chart will
  121. # be rotated on each upgrade:
  122. # https://github.com/bitnami/charts/tree/master/bitnami/postgresql#upgrade
  123. postgresqlPassword: ""
  124. postgresqlUsername: postgres
  125. # https://github.com/bitnami/charts/tree/master/bitnami/redis#parameters
  126. redis:
  127. # you must set a password; the password generated by the redis chart will be
  128. # rotated on each upgrade:
  129. password: ""
  130. service:
  131. type: ClusterIP
  132. port: 80
  133. # https://github.com/tootsuite/mastodon/blob/master/Dockerfile#L88
  134. #
  135. # if you manually change the UID/GID environment variables, ensure these values
  136. # match:
  137. podSecurityContext:
  138. runAsUser: 991
  139. runAsGroup: 991
  140. fsGroup: 991
  141. securityContext: {}
  142. serviceAccount:
  143. # Specifies whether a service account should be created
  144. create: true
  145. # Annotations to add to the service account
  146. annotations: {}
  147. # The name of the service account to use.
  148. # If not set and create is true, a name is generated using the fullname template
  149. name: ""
  150. podAnnotations: {}
  151. resources: {}
  152. # We usually recommend not to specify default resources and to leave this as a conscious
  153. # choice for the user. This also increases chances charts run on environments with little
  154. # resources, such as Minikube. If you do want to specify resources, uncomment the following
  155. # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
  156. # limits:
  157. # cpu: 100m
  158. # memory: 128Mi
  159. # requests:
  160. # cpu: 100m
  161. # memory: 128Mi
  162. autoscaling:
  163. enabled: false
  164. minReplicas: 1
  165. maxReplicas: 100
  166. targetCPUUtilizationPercentage: 80
  167. # targetMemoryUtilizationPercentage: 80
  168. nodeSelector: {}
  169. tolerations: []
  170. affinity: {}