description:"Do not click this unless you know what you are doing"
schema:
type:boolean
default:false
show_subquestions_if:true
subquestions:
- variable:extraArgs
label:Extra Args
schema:
type:list
default:[]
items:
- variable:arg
label:Arg
schema:
type:string
- variable:env
group:"App Configuration"
label:"Image Environment"
schema:
additional_attrs:true
type:dict
attrs:
- variable:VIKUNJA_SERVICE_FRONTENDURL
label:"VIKUNJA_SERVICE_FRONTENDURL"
description:"The URL of the frontend, used to send password reset emails. eg. https://vikunjka.example.com (be sure to include the servicePort when needed)"
schema:
type:string
required:true
default:""
- variable:VIKUNJA_SERVICE_MOTD
label:"VIKUNJA_SERVICE_MOTD"
description:"Set the motd message, available from the /info endpoint"
schema:
type:string
default:""
- variable:VIKUNJA_SERVICE_JWTTTL
label:"VIKUNJA_SERVICE_JWTTTL"
description:"The duration of the issed JWT tokens in seconds. The default is 259200 seconds (3 Days)."
schema:
type:int
required:true
default:259200
- variable:VIKUNJA_SERVICE_JWTTTLLONG
label:"VIKUNJA_SERVICE_JWTTTLLONG"
description:"The duration of the remember me time in seconds. When the login request is made with the long param set, the token returned will be valid for this period. The default is 2592000 seconds (30 Days)."
schema:
type:int
required:true
default:2592000
- variable:VIKUNJA_SERVICE_MAXITEMSPERPAGE
label:"VIKUNJA_SERVICE_MAXITEMSPERPAGE"
description:"The max number of items which can be returned per page."
schema:
type:int
required:true
default:50
- variable:VIKUNJA_FILES_MAXSIZE
label:"VIKUNJA_FILES_MAXSIZE"
description:"The maximum size of a file, as a human-readable string. Warning: The max size is limited 2^64-1 bytes due to the underlying datatype"
schema:
type:string
required:true
default:"20MB"
- variable:VIKUNJA_SERVICE_ENABLECALDAV
label:"VIKUNJA_SERVICE_ENABLECALDAV"
description:"Enable the caldav endpoint, see the docs for more details"
schema:
type:boolean
default:true
- variable:VIKUNJA_SERVICE_ENABLELINKSHARING
label:"VIKUNJA_SERVICE_ENABLELINKSHARING"
description:"Enable sharing of lists via a link"
schema:
type:boolean
default:true
- variable:VIKUNJA_SERVICE_ENABLEREGISTRATION
label:"VIKUNJA_SERVICE_ENABLEREGISTRATION"
description:"Whether to let new users registering themselves or not"
schema:
type:boolean
default:true
- variable:VIKUNJA_SERVICE_ENABLETASKATTACHMENTS
label:"VIKUNJA_SERVICE_ENABLETASKATTACHMENTS"
description:"Whether to enable task attachments or not"
schema:
type:boolean
default:true
- variable:VIKUNJA_SERVICE_ENABLETASKCOMMENTS
label:"VIKUNJA_SERVICE_ENABLETASKCOMMENTS"
description:"Whether task comments should be enabled or not"
schema:
type:boolean
default:true
- variable:VIKUNJA_SERVICE_ENABLETOTP
label:"VIKUNJA_SERVICE_ENABLETOTP"
description:"Whether totp is enabled. In most cases you want to leave that enabled."
schema:
type:boolean
default:true
- variable:VIKUNJA_SERVICE_ENABLEEMAILREMINDERS
label:"VIKUNJA_SERVICE_ENABLEEMAILREMINDERS"
description:"If enabled, vikunja will send an email to everyone who is either assigned to a task or created it when a task reminder is due."
schema:
type:boolean
default:true
- variable:VIKUNJA_SERVICE_ENABLEUSERDELETION
label:"VIKUNJA_SERVICE_ENABLEUSERDELETION"
description:"If true, will allow users to request the complete deletion of their account. When using external authentication methods it may be required to coordinate with them in order to delete the account. This setting will not affect the cli commands for user deletion."
schema:
type:boolean
default:true
- variable:VIKUNJA_BACKGROUNDS_ENABLED
label:"VIKUNJA_BACKGROUNDS_ENABLED"
description:"Whether to enable backgrounds for lists at all."
schema:
type:boolean
default:true
- variable:VIKUNJA_RATELIMIT_ENABLED
label:"VIKUNJA_RATELIMIT_ENABLED"
description:"Whether or not to enable the rate limit"
schema:
type:boolean
default:false
show_subquestions_if:true
subquestions:
- variable:VIKUNJA_RATELIMIT_KIND
label:"VIKUNJA_RATELIMIT_KIND"
description:"The kind on which rates are based. Can be either for a rate limit per user or for an ip-based rate limit."
schema:
type:string
required:true
default:"user"
enum:
- value:user
description:"user"
- value:ip
description:"ip"
- variable:VIKUNJA_RATELIMIT_PERIOD
label:"VIKUNJA_RATELIMIT_PERIOD"
description:"The time period in seconds for the limit"
schema:
type:int
required:true
default:60
- variable:VIKUNJA_RATELIMIT_LIMIT
label:"VIKUNJA_RATELIMIT_LIMIT"
description:"The max number of requests a user is allowed to do in the configured time period"
schema:
type:int
required:true
default:100
- variable:VIKUNJA_MAILER_ENABLED
label:"VIKUNJA_MAILER_ENABLED"
description:"Whether to enable the mailer or not. If it is disabled, all users are enabled right away and password reset is not possible."
schema:
type:boolean
default:false
show_subquestions_if:true
subquestions:
- variable:VIKUNJA_MAILER_HOST
label:"VIKUNJA_MAILER_HOST"
description:"SMTP Host"
schema:
type:string
required:true
default:""
- variable:VIKUNJA_MAILER_PORT
label:"VIKUNJA_MAILER_PORT"
description:"SMTP Host Port"
schema:
type:int
required:true
default:587
- variable:VIKUNJA_MAILER_USERNAME
label:"VIKUNJA_MAILER_USERNAME"
description:"SMTP username"
schema:
type:string
default:""
- variable:VIKUNJA_MAILER_PASSWORD
label:"VIKUNJA_MAILER_PASSWORD"
description:"SMTP password"
schema:
type:string
private:true
default:""
- variable:VIKUNJA_MAILER_FROMEMAIL
label:"VIKUNJA_MAILER_FROMEMAIL"
description:"The default from address when sending emails"
schema:
type:string
required:true
default:""
- variable:VIKUNJA_MAILER_SKIPTLSVERIFY
label:"VIKUNJA_MAILER_SKIPTLSVERIFY"
description:"Wether to skip verification of the tls certificate on the server"
schema:
type:boolean
default:false
- variable:VIKUNJA_MAILER_FORCESSL
label:"VIKUNJA_MAILER_FORCESSL"
description:"By default, vikunja will try to connect with starttls, use this option to force it to use ssl."
schema:
type:boolean
default:false
- variable:VIKUNJA_MAILER_QUEUELENGTH
label:"VIKUNJA_MAILER_QUEUELENGTH"
description:"The length of the mail queue."
schema:
type:int
required:true
default:100
- variable:VIKUNJA_MAILER_QUEUETIMEOUT
label:"VIKUNJA_MAILER_QUEUETIMEOUT"
description:"The timeout in seconds after which the current open connection to the mailserver will be closed."
schema:
type:int
required:true
default:30
- variable:TZ
label:Timezone
group:"General Settings"
schema:
type:string
default:"Etc/UTC"
$ref:
- "definitions/timezone"
- variable:envList
label:Extra Environment Variables
description:"Please be aware that some variables are set in the background, adding duplicates here might cause issues or prevent the app from starting..."
group:"General Settings"
schema:
type:list
default:[]
items:
- variable:envItem
label:Environment Variable
schema:
additional_attrs:true
type:dict
attrs:
- variable:name
label:Name
schema:
type:string
- variable:value
label:Value
schema:
type:string
- variable:service
group:Networking and Services
label:Configure Service(s)
schema:
additional_attrs:true
type:dict
attrs:
- variable:main
label:"Main Service"
description:"The Primary service on which the healthcheck runs, often the webUI"
schema:
additional_attrs:true
type:dict
attrs:
- variable:enabled
label:Enable the Service
schema:
type:boolean
default:true
hidden:true
- variable:type
label:Service Type
description:"ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer"
schema:
type:string
default:LoadBalancer
enum:
- value:LoadBalancer
description:LoadBalancer (Expose Ports)
- value:ClusterIP
description:ClusterIP (Do Not Expose Ports)
- value:Simple
description:Deprecated CHANGE THIS
- variable:loadBalancerIP
label:LoadBalancer IP
description:"MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB"
schema:
show_if:[["type","=","LoadBalancer"]]
type:string
default:""
- variable:ports
label:"Service's Port(s) Configuration"
schema:
additional_attrs:true
type:dict
attrs:
- 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:10220
required:true
- variable:serviceexpert
group:Networking and Services
label:Show Expert Config
schema:
type:boolean
default:false
show_subquestions_if:true
subquestions:
- variable:hostNetwork
group:Networking and Services
label:Host-Networking (Complicated)
schema:
type:boolean
default:false
- variable:externalInterfaces
description:Add External Interfaces
label:Add external Interfaces
group:Networking
schema:
type:list
items:
- variable:interfaceConfiguration
description:Interface Configuration
label:Interface Configuration
schema:
type:dict
$ref:
- "normalize/interfaceConfiguration"
attrs:
- variable:hostInterface
description:Please Specify Host Interface
label:Host Interface
schema:
type:string
required:true
$ref:
- "definitions/interface"
- variable:ipam
description:Define how IP Address will be managed
label:IP Address Management
schema:
type:dict
required:true
attrs:
- variable:type
description:Specify type for IPAM
label:IPAM Type
schema:
type:string
required:true
enum:
- value:dhcp
description:Use DHCP
- value:static
description:Use Static IP
show_subquestions_if:static
subquestions:
- variable:staticIPConfigurations
label:Static IP Addresses
schema:
type:list
items:
- variable:staticIP
label:Static IP
schema:
type:ipaddr
cidr:true
- variable:staticRoutes
label:Static Routes
schema:
type:list
items:
- variable:staticRouteConfiguration
label:Static Route Configuration
schema:
additional_attrs:true
type:dict
attrs:
- variable:destination
label:Destination
schema:
type:ipaddr
cidr:true
required:true
- variable:gateway
label:Gateway
schema:
type:ipaddr
cidr:false
required:true
- variable:serviceList
label:Add Manual Custom Services
group:Networking and Services
schema:
type:list
default:[]
items:
- variable:serviceListEntry
label:Custom Service
schema:
additional_attrs:true
type:dict
attrs:
- variable:enabled
label:Enable the service
schema:
type:boolean
default:true
hidden:true
- variable:name
label:Name
schema:
type:string
default:""
- variable:type
label:Service Type
description:"ClusterIP's are only internally available and Loadbalancer exposes the service using the system loadbalancer"
schema:
type:string
default:LoadBalancer
enum:
- value:LoadBalancer
description:LoadBalancer (Expose Ports)
- value:ClusterIP
description:ClusterIP (Do Not Expose Ports)
- value:Simple
description:Deprecated CHANGE THIS
- variable:loadBalancerIP
label:LoadBalancer IP
description:"MetalLB Only: Selects the Loadbalancer IP to expose on. Required when using PortalButton with MetalLB"
schema:
show_if:[["type","=","LoadBalancer"]]
type:string
default:""
- variable:advancedsvcset
label:Show Advanced Service Settings
schema:
type:boolean
default:false
show_subquestions_if:true
subquestions:
- variable:externalIPs
label:"External IP's"
description:"External IP's"
schema:
type:list
default:[]
items:
- variable:externalIP
label:External IP
schema:
type:string
- variable:ipFamilyPolicy
label:IP Family Policy
description:Specify the IP Policy
schema:
type:string
default:SingleStack
enum:
- value:SingleStack
description:SingleStack
- value:PreferDualStack
description:PreferDualStack
- value:RequireDualStack
description:RequireDualStack
- variable:ipFamilies
label:IP Families
description:(Advanced) The IP Families that should be used
schema:
type:list
default:[]
items:
- variable:ipFamily
label:IP Family
schema:
type:string
- variable:portsList
label:Additional Service Ports
schema:
type:list
default:[]
items:
- variable:portsListEntry
label:Custom ports
schema:
additional_attrs:true
type:dict
attrs:
- variable:enabled
label:Enable the Port
schema:
type:boolean
default:true
hidden:true
- variable:name
label:Port Name
schema:
type:string
default:""
- variable:protocol
label:Port Type
schema:
type:string
default:TCP
enum:
- value:HTTP
description:HTTP
- value:HTTPS
description:HTTPS
- value:TCP
description:TCP
- value:UDP
description:UDP
- variable:targetPort
label:Target Port
description:This port exposes the container port on the service
schema:
type:int
required:true
- variable:port
label:Container Port
schema:
type:int
required:true
- variable:persistence
label:Integrated Persistent Storage
description:Integrated Persistent Storage
group:Storage and Persistence
schema:
additional_attrs:true
type:dict
attrs:
- variable:files
label:"App Files Storage"
description:"Stores the Application Files."
schema:
additional_attrs:true
type:dict
attrs:
- variable:type
label:Type of Storage
description:Sets the persistence type, Anything other than PVC could break rollback!
schema:
type:string
default:pvc
enum:
- value:pvc
description:PVC
- value:hostPath
description:Host Path
- value:emptyDir
description:emptyDir
- value:nfs
description:NFS Share
- variable:server
label:NFS Server
schema:
show_if:[["type","=","nfs"]]
type:string
default:""
- variable:path
label:Path on NFS Server
schema:
show_if:[["type","=","nfs"]]
type:string
default:""
- variable:setPermissions
label:Automatic Permissions
description:Automatically set permissions on install
schema:
show_if:[["type","=","hostPath"]]
type:boolean
default:false
- variable:readOnly
label:Read Only
schema:
type:boolean
default:false
- variable:hostPath
label:Host Path
description:Path inside the container the storage is mounted