peertube_enabled: false peertube_publish: false peertube_use_external_db: true peertube_short_name: "peertube" peertube_default_values: replicaCount: 1 imagePullSecrets: [] nameOverride: "" fullnameOverride: "" configAsCode: enabled: true config: listen: hostname: '0.0.0.0' port: 9000 # Correspond to your reverse proxy server_name/listen configuration webserver: https: true hostname: '{{ peertube_short_name }}.{{ domain }}' port: 443 secrets: peertube: '{{ peertube_secret }}' rates_limit: api: # 50 attempts in 10 seconds window: 10 seconds max: 50 login: # 15 attempts in 5 min window: 5 minutes max: 15 signup: # 2 attempts in 5 min (only succeeded attempts are taken into account) window: 5 minutes max: 2 ask_send_email: # 3 attempts in 5 min window: 5 minutes max: 3 # Proxies to trust to get real client IP # If you run PeerTube just behind a local proxy (nginx), keep 'loopback' # If you run PeerTube behind a remote proxy, add the proxy IP address (or subnet) trust_proxy: - 'loopback' - 'linklocal' - 'uniquelocal' - '10.0.0.0/8' - '172.16.0.0/12' - '192.168.0.0/16' # Your database name will be database.name OR "peertube"+database.suffix database: hostname: '{{ namespace }}-postgres.{{ postgres_db_namespace | default(namespace) }}.svc.cluster.local' port: 5432 ssl: require suffix: '' username: '{{ peertube_db_username }}' password: '{{ peertube_db_password }}' pool: max: 5 # Redis server for short time storage # You can also specify a 'socket' path to a unix socket but first need to # comment out hostname and port redis: hostname: 'peertube-redis-master' port: 6379 auth: null db: 0 # SMTP server to send emails smtp: # smtp or sendmail transport: smtp # Path to sendmail command. Required if you use sendmail transport sendmail: null hostname: "{{ mail_short_name | default('mail') }}.{{ domain }}" port: 465 # If you use StartTLS: 587 username: peertube password: "{{ peertube_ldap_password }}" tls: true # If you use StartTLS: false disable_starttls: true ca_file: null # Used for self signed certificates from_address: 'peertube@{{ domain }}' admin: # Used to generate the root user at first startup # And to receive emails from the contact form email: 'peertube@{{ domain }}' contact_form: enabled: true # Instance settings instance: name: 'GHP PeerTube' default_client_route: '/videos/recently-added' federation: videos: federate_unlisted: false cleanup_remote_interactions: true env: - name: PT_INITIAL_ROOT_PASSWORD value: "{{ peertube_admin_password }}" ingress: enabled: true className: "{{ external_ingress_class if peertube_publish else internal_ingress_class }}" annotations: cert-manager.io/cluster-issuer: "letsencrypt-prod" kubernetes.io/tls-acme: "true" nginx.ingress.kubernetes.io/proxy-body-size: "0" nginx.ingress.kubernetes.io/proxy-read-timeout: "600" nginx.ingress.kubernetes.io/proxy-send-timeout: "600" hosts: - host: "{{ peertube_short_name }}.{{ domain }}" paths: - path: / pathType: ImplementationSpecific tls: - secretName: "{{ peertube_short_name }}.{{ domain }}-tls" hosts: - "{{ peertube_short_name }}.{{ domain }}" persistence: enabled: true accessMode: "{{ peertube_storage_mode | default('ReadWriteMany') }}" size: "{{ peertube_size | default('100Gi') }}" storageClass: "{{ peertube_storage | default('nfs-hdd') }}" redis: enabled: true postgresql: enabled: false