# Include{groups} portals: open: # Include{portalLink} questions: # Include{global} # Include{controller} # Include{controllerDeployment} # Include{replicas} # Include{replica1} # Include{strategy} # Include{recreate} # Include{controllerExpert} # Include{controllerExpertExtraArgs} - variable: secretEnv group: "Container Configuration" label: "Image Secrets" schema: additional_attrs: true type: dict attrs: - variable: INIT_USER label: "INIT_USER" description: "" schema: type: string required: true default: "" - variable: INIT_GROUP label: "INIT_GROUP" description: "" schema: type: string required: true default: "" - variable: INIT_PASSWORD label: "INIT_PASSWORD" description: "" schema: type: string required: true private: true default: "" - variable: env group: "Container Configuration" label: "Image Environment" schema: additional_attrs: true type: dict attrs: - variable: DOMAIN label: "DOMAIN" description: "DOMAIN is used to generate urls" schema: type: string default: "" - variable: LANG label: "LANG" schema: type: string required: true default: "en" - variable: ALLOW_BOTS label: "ALLOW_BOTS" schema: type: boolean default: false - variable: ALLOW_VIDEO_UPLOAD label: "ALLOW_VIDEO_UPLOAD" schema: type: boolean default: true - variable: ALLOW_IMAGE_UPLOAD label: "ALLOW_IMAGE_UPLOAD" schema: type: boolean default: true - variable: ALLOW_PDF_UPLOAD label: "ALLOW_PDF_UPLOAD" schema: type: boolean default: true - variable: ALLOW_AUDIO_UPLOAD label: "ALLOW_AUDIO_UPLOAD" schema: type: boolean default: true - variable: IDLE_HOURS label: "IDLE_HOURS" description: "IDLE_HOURS indicate hours during which heavy operations can occur" schema: type: string required: true default: "01-07" - variable: VIDEO_CONVERSION_THREADS label: "VIDEO_CONVERSION_THREADS" description: "Number of threads to use for video conversion" schema: type: int required: true default: 1 - variable: VIDEO_FORMAT_NOT_CONVERTED label: "VIDEO_FORMAT_NOT_CONVERTED" description: "VIDEO_FORMAT_NOT_CONVERTED is a comma (',') separated list" schema: type: string required: true default: "video/mp4" - variable: VIDEO_SIZE_NOT_CONVERTED label: "VIDEO_SIZE_NOT_CONVERTED" description: "VIDEO_SIZE_NOT_CONVERTED is in Mo" schema: type: int required: true default: 10 - variable: MAX_TASK_LOCK_DURATION label: "MAX_TASK_LOCK_DURATION" description: "This is the time in seconds before it considers the task as stalled and clears the lock" schema: type: int required: true default: 14400 - variable: ALLOW_EMAIL label: "ALLOW_EMAIL" schema: type: boolean default: false show_subquestions_if: true subquestions: - variable: MAILER_DSN label: "MAILER_DSN" schema: type: string default: "null://localhost" - variable: mailer_auth_mode label: "mailer_auth_mode" schema: type: string default: "cram-md5" - variable: mailer_username label: "mailer_username" schema: type: string default: "" - variable: mailer_password label: "mailer_password" schema: type: string private: true default: "" - variable: mailer_port label: "mailer_port" schema: type: int default: 587 - variable: mailer_host label: "mailer_host" schema: type: string default: "" - variable: mailer_transport label: "mailer_transport" schema: type: string default: "smtp" - variable: mailer_encryption label: "mailer_encryption" schema: type: string default: "tls" - variable: enable_cron_config label: "Configure Cron" schema: type: boolean default: false show_subquestions_if: true subquestions: - variable: CRON_CONVERT_IMAGES label: "CRON_CONVERT_IMAGES" description: "Task execution intervals in seconds" schema: type: int default: 60 - variable: CRON_CONVERT_VIDEO label: "CRON_CONVERT_VIDEO" description: "Task execution intervals in seconds" schema: type: int default: 3600 - variable: CRON_NOTIFICATION_EMAILS label: "CRON_NOTIFICATION_EMAILS" description: "Task execution intervals in seconds" schema: type: int default: 3600 - variable: CRON_COMPRESS_GIFS label: "CRON_COMPRESS_GIFS" description: "Task execution intervals in seconds" schema: type: int default: 3600 - variable: CRON_BOT_ACTIVATE label: "CRON_BOT_ACTIVATE" description: "Task execution intervals in seconds" schema: type: int default: 3600 - variable: CRON_CLEAN_CACHE label: "CRON_CLEAN_CACHE" description: "Task execution intervals in seconds" schema: type: int default: 86400 - variable: CRON_CLEAN_NOTIFICATIONS label: "CRON_CLEAN_NOTIFICATIONS" description: "Task execution intervals in seconds" schema: type: int default: 604800 - variable: CRON_CLEAN_FILES label: "CRON_CLEAN_FILES" description: "Task execution intervals in seconds" schema: type: int default: 604800 - variable: CRON_CLEAN_MESSAGES label: "CRON_CLEAN_MESSAGES" description: "Task execution intervals in seconds" schema: type: int default: 604800 - variable: CRON_CLEAN_GROUPS label: "CRON_CLEAN_GROUPS" description: "Task execution intervals in seconds" schema: type: int default: 2592000 # Include{containerConfig} # Include{serviceRoot} - variable: main label: "Main Service" description: "The Primary service on which the healthcheck runs, often the webUI" schema: additional_attrs: true type: dict attrs: # Include{serviceSelectorLoadBalancer} # Include{serviceSelectorExtras} - variable: main label: "Main Service Port Configuration" schema: additional_attrs: true type: dict attrs: - variable: port label: "Port" description: "This port exposes the container port on the service" schema: type: int default: 10283 required: true # Include{advancedPortHTTP} - variable: targetPort label: "Target Port" description: "The internal(!) port on the container the Application runs on" schema: type: int default: 8080 # Include{serviceExpertRoot} default: false # Include{serviceExpert} # Include{serviceList} # Include{persistenceRoot} - variable: data label: "App Data Storage" description: "Stores the Application Data." schema: additional_attrs: true type: dict attrs: # Include{persistenceBasic} # Include{persistenceAdvanced} # Include{persistenceList} # Include{ingressRoot} - variable: main label: "Main Ingress" schema: additional_attrs: true type: dict attrs: # Include{ingressDefault} # Include{ingressTLS} # Include{ingressTraefik} # Include{ingressExpert} # Include{ingressList} # Include{security} # Include{securityContextAdvancedRoot} - variable: privileged label: "Privileged mode" schema: type: boolean default: false - variable: readOnlyRootFilesystem label: "ReadOnly Root Filesystem" schema: type: boolean default: false - variable: allowPrivilegeEscalation label: "Allow Privilege Escalation" schema: type: boolean default: false - variable: runAsNonRoot label: "runAsNonRoot" schema: type: boolean default: false # Include{securityContextAdvanced} # Include{podSecurityContextRoot} - variable: runAsUser label: "runAsUser" description: "The UserID of the user running the application" schema: type: int default: 0 - variable: runAsGroup label: "runAsGroup" description: "The groupID this App of the user running the application" schema: type: int default: 0 - variable: fsGroup label: "fsGroup" description: "The group that should own ALL storage." schema: type: int default: 568 # Include{podSecurityContextAdvanced} # Include{resources} # Include{advanced} # Include{addons} # Include{documentation}