# Include{groups} portals: open: # Include{portalLink} questions: # Include{global} # Include{workload} # Include{workloadDeployment} # Include{replicas1} # Include{podSpec} # Include{containerMain} # Include{containerBasic} # Include{containerAdvanced} - variable: invidious group: App Configuration label: Invidious Configuration schema: additional_attrs: true type: dict attrs: - variable: network label: Network Configuration schema: additional_attrs: true type: dict attrs: - variable: inbound label: Inbound schema: additional_attrs: true type: dict attrs: - variable: external_port label: External Port description: When the invidious instance is behind a proxy, and the proxy listens on a different port than the instance does, this lets invidious know about it. schema: type: int required: true min: 1 max: 65535 default: 10594 - variable: https_only label: HTTPS Only description: Tell Invidious that it is behind a proxy that provides only HTTPS, so all links must use the https:// scheme. This setting MUST be set to true if invidious is behind a reverse proxy serving HTTPs. schema: type: boolean default: false - variable: domain label: Domain description: Domain name under which this instance is hosted. This is used to craft absolute URLs to the instance schema: type: string default: "" - variable: hsts label: HSTS description: Enable/Disable Strict-Transport-Security. schema: type: boolean default: false - variable: outbound label: Outbound schema: additional_attrs: true type: dict attrs: - variable: disable_proxy label: Disable Proxy description: Disable proxying server-wide. Can be disable as a whole, or only for a single function. schema: type: string required: true default: "false" enum: - value: "false" description: "false" - value: "true" description: "true" - value: dash description: dash - value: livestreams description: livestreams - value: livestreams description: livestreams - value: downloads description: downloads - value: local description: local - variable: pool_size label: Pool Size description: Size of the HTTP pool used to connect to youtube. schema: type: int required: true min: 1 default: 100 - variable: use_quic label: Use QUIC description: Enable/Disable the use of QUIC (HTTP/3) when connecting to the youtube API and websites schema: type: boolean default: false - variable: cookies label: Cookies description: Additional cookies to be sent when requesting the youtube API. schema: type: list default: [] items: - variable: cookie_entry label: Cookie Entry schema: type: string required: true default: "" - variable: force_resolve label: Force Resolve description: Force connection to youtube over a specific IP family. schema: type: string default: "" enum: - value: "" description: No Force - value: ipv4 description: ipv4 - value: ipv6 description: ipv6 - variable: logging label: Logging Configuration schema: additional_attrs: true type: dict attrs: - variable: output label: Output description: STDOUT or Path to log file. Can be absolute or relative to the invidious binary. schema: type: string required: true default: STDOUT - variable: log_level label: Log Level description: Logging Verbosity. schema: type: string required: true default: Info enum: - value: Info description: Info - value: Trace description: Trace - value: Debug description: Debug - value: Warn description: Warn - value: Error description: Error - value: Fatal description: Fatal - value: "Off" description: "Off" - value: All description: All - variable: features label: Features Configuration schema: additional_attrs: true type: dict attrs: - variable: popular_enabled label: Popular Enabled description: Enable/Disable the "Popular" tab on the main page. schema: type: boolean default: true - variable: statistics_enabled label: Statistics Enabled description: Enable/Disable statistics (available at /api/v1/stats). schema: type: boolean default: false - variable: users_accounts label: Users and Accounts schema: additional_attrs: true type: dict attrs: - variable: registration_enabled label: Registration Enabled description: Allow/Forbid Invidious (local) account creation. Invidious accounts allow users to subscribe to channels and to create playlists without a Google account. schema: type: boolean default: true - variable: login_enabled label: Login Enabled description: Allow/Forbid users to log-in. This setting affects the ability to connect with BOTH Google and Invidious (local) accounts. schema: type: boolean default: true - variable: captcha_enabled label: Captcha Enabled description: Enable/Disable the captcha challenge on the login page. schema: type: boolean default: true - variable: admins label: Admins description: List of usernames that will be granted administrator rights. schema: type: list default: [] items: - variable: adminEntry label: Admin Entry schema: type: string required: true default: "" - variable: enable_user_notifications label: User Notifications Enabled description: Enable/Disable user notifications. schema: type: boolean default: true - variable: background_jobs label: Background Jobs schema: additional_attrs: true type: dict attrs: - variable: channel_threads label: Channel Threads description: Number of threads to use when crawling channel videos (during subscriptions update). schema: type: int required: true min: 1 default: 1 - variable: channel_refresh_interval label: Channel Refresh Interval description: Time interval between two executions of the job that crawls channel videos (subscriptions update). schema: type: string required: true default: 30m - variable: full_refresh label: Full Refresh description: Forcefully dump and re-download the entire list of uploaded videos when crawling channel (during subscriptions update). schema: type: boolean default: false - variable: feed_threads label: Feed Threads description: Number of threads to use when updating RSS feeds. schema: type: int required: true min: 1 default: 1 - variable: decrypt_polling label: Decrypt Polling description: Enable/Disable the polling job that keeps the decryption function (for "secured" videos) up to date. schema: type: boolean default: false - variable: jobs label: Jobs Configuration schema: additional_attrs: true type: dict attrs: - variable: clear_expired_items label: Clear Expired Items schema: additional_attrs: true type: dict attrs: - variable: enable label: Enable description: Enable the database cleaning job schema: type: boolean default: true - variable: refresh_channels label: Refresh Channels schema: additional_attrs: true type: dict attrs: - variable: enable label: Enable description: Enable the channels updater job schema: type: boolean default: true - variable: refresh_feeds label: Refresh Feeds schema: additional_attrs: true type: dict attrs: - variable: enable label: Enable description: Enable the RSS feeds updater job schema: type: boolean default: true - variable: captcha label: Captcha schema: additional_attrs: true type: dict attrs: - variable: captcha_api_url label: Captcha API URL description: URL of the captcha solving service. schema: type: string required: true default: https://api.anti-captcha.com - variable: captcha_key label: Captcha API Key description: API key for the captcha solving service. schema: type: string private: true default: "" - variable: miscellaneous label: Miscellaneous schema: additional_attrs: true type: dict attrs: - variable: banner label: Banner description: Custom banner displayed at the top of every page. This can used for instance announcements, e.g. schema: type: string default: "" - variable: use_pubsub_feeds label: Use PuBSub Feeds description: Subscribe to channels using PubSubHub (Google PubSubHubbub service). PubSubHub allows Invidious to be instantly notified when a new video is published on any subscribed channels schema: type: boolean default: false - variable: hmac_key label: HMAC Key description: HMAC signing key used for CSRF tokens and pubsub subscriptions verification. A random key must be generated and placed here. schema: type: string private: true default: "" - variable: dmca_content label: DMCA Content description: List of video IDs where the "download" widget must be disabled, in order to comply with DMCA requests. schema: type: list default: [] items: - variable: dmcaEntry label: DMCA Entry schema: type: string required: true default: "" - variable: cache_annotations label: Cache Annotations description: Cache video annotations in the database. schema: type: boolean default: false - variable: playlist_length_limit label: Playlist Length Limit description: Maximum custom playlist length limit. schema: type: int required: true default: 500 - variable: default_user_preferences label: Default User Preferences schema: additional_attrs: true type: dict attrs: - variable: internationalization label: Internationalization schema: additional_attrs: true type: dict attrs: - variable: locale label: Locale description: Default user interface language (locale). schema: type: string required: true default: en-US enum: - value: ar description: Arabic - value: da description: Danish - value: de description: German - value: en-US description: English, US - value: el description: Greek - value: eo description: Esperanto - value: es description: Spanish - value: fa description: Persian - value: fi description: Finnish - value: fr description: French - value: he description: Hebrew - value: hr description: Hungarian - value: id description: Indonesian - value: is description: Icelandic - value: it description: Italian - value: ja description: Japanese - value: nb-NO description: Norwegian, Bomkmal - value: nl description: Dutch - value: pl description: Polish - value: pt-BR description: Portuguese, Brazil - value: pt-PT description: Portuguese, Portugal - value: ro description: Romanian - value: ru description: Russian - value: sv description: Swedish - value: tr description: Turkish - value: uk description: Ukrainian - value: zh-CN description: Chinese, China (Simplified Chinese) - value: zh-TW description: Chinese, Taiwan (Traditional Chinese) - variable: region label: Region description: Default geographical location for content. schema: type: string required: true default: US enum: - value: AE description: AE - value: AR description: AR - value: AT description: AT - value: AU description: AU - value: AZ description: AZ - value: BA description: BA - value: BD description: BD - value: BE description: BE - value: BG description: BG - value: BH description: BH - value: BO description: BO - value: BR description: BR - value: BY description: BY - value: CA description: CA - value: CH description: CH - value: CL description: CL - value: CO description: CO - value: CR description: CR - value: CY description: CY - value: CZ description: CZ - value: DE description: DE - value: DK description: DK - value: DO description: DO - value: DZ description: DZ - value: EC description: EC - value: EE description: EE - value: EG description: EG - value: ES description: ES - value: FI description: FI - value: FR description: FR - value: GB description: GB - value: GE description: GE - value: GH description: GH - value: GR description: GR - value: GT description: GT - value: HK description: HK - value: HN description: HN - value: HR description: HR - value: HU description: HU - value: ID description: ID - value: IE description: IE - value: IL description: IL - value: IN description: IN - value: IQ description: IQ - value: IS description: IS - value: IT description: IT - value: JM description: JM - value: JO description: JO - value: JP description: JP - value: KE description: KE - value: KR description: KR - value: KW description: KW - value: KZ description: KZ - value: LB description: LB - value: LI description: LI - value: LK description: LK - value: LT description: LT - value: LU description: LU - value: LV description: LV - value: LY description: LY - value: MA description: MA - value: ME description: ME - value: MK description: MK - value: MT description: MT - value: MX description: MX - value: MY description: MY - value: NG description: NG - value: NI description: NI - value: NL description: NL - value: "NO" description: "NO" - value: NP description: NP - value: NZ description: NZ - value: OM description: OM - value: PA description: PA - value: PE description: PE - value: PG description: PG - value: PH description: PH - value: PK description: PK - value: PL description: PL - value: PR description: PR - value: PT description: PT - value: PY description: PY - value: QA description: QA - value: RO description: RO - value: RS description: RS - value: RU description: RU - value: SA description: SA - value: SE description: SE - value: SG description: SG - value: SI description: SI - value: SK description: SK - value: SN description: SN - value: SV description: SV - value: TH description: TH - value: TN description: TN - value: TR description: TR - value: TW description: TW - value: TZ description: TZ - value: UA description: UA - value: UG description: UG - value: US description: US - value: UY description: UY - value: VE description: VE - value: VN description: VN - value: YE description: YE - value: ZA description: ZA - value: ZW description: ZW - variable: captions label: Captions description: Top 3 preferred languages for video captions. Exactly 3 Captions schema: type: list default: [] items: - variable: captionEntry label: Caption Entry schema: type: string required: true default: "" enum: - value: English description: English - value: English (auto-generated) description: English (auto-generated) - value: Afrikaans description: Afrikaans - value: Albanian description: Albanian - value: Amharic description: Amharic - value: Arabic description: Arabic - value: Armenian description: Armenian - value: Azerbaijani description: Azerbaijani - value: Bangla description: Bangla - value: Basque description: Basque - value: Belarusian description: Belarusian - value: Bosnian description: Bosnian - value: Bulgarian description: Bulgarian - value: Burmese description: Burmese - value: Catalan description: Catalan - value: Cebuano description: Cebuano - value: Chinese (Simplified) description: Chinese (Simplified) - value: Chinese (Traditional) description: Chinese (Traditional) - value: Corsican description: Corsican - value: Croatian description: Croatian - value: Czech description: Czech - value: Danish description: Danish - value: Dutch description: Dutch - value: Esperanto description: Esperanto - value: Estonian description: Estonian - value: Filipino description: Filipino - value: Finnish description: Finnish - value: French description: French - value: Galician description: Galician - value: Georgian description: Georgian - value: German description: German - value: Greek description: Greek - value: Gujarati description: Gujarati - value: Haitian Creole description: Haitian Creole - value: Hausa description: Hausa - value: Hawaiian description: Hawaiian - value: Hebrew description: Hebrew - value: Hindi description: Hindi - value: Hmong description: Hmong - value: Hungarian description: Hungarian - value: Icelandic description: Icelandic - value: Igbo description: Igbo - value: Indonesian description: Indonesian - value: Irish description: Irish - value: Italian description: Italian - value: Japanese description: Japanese - value: Javanese description: Javanese - value: Kannada description: Kannada - value: Kazakh description: Kazakh - value: Khmer description: Khmer - value: Korean description: Korean - value: Kurdish description: Kurdish - value: Kyrgyz description: Kyrgyz - value: Lao description: Lao - value: Latin description: Latin - value: Latvian description: Latvian - value: Lithuanian description: Lithuanian - value: Luxembourgish description: Luxembourgish - value: Macedonian description: Macedonian - value: Malagasy description: Malagasy - value: Malay description: Malay - value: Malayalam description: Malayalam - value: Maltese description: Maltese - value: Maori description: Maori - value: Marathi description: Marathi - value: Mongolian description: Mongolian - value: Nepali description: Nepali - value: Norwegian Bokmål description: Norwegian Bokmål - value: Nyanja description: Nyanja - value: Pashto description: Pashto - value: Persian description: Persian - value: Polish description: Polish - value: Portuguese description: Portuguese - value: Punjabi description: Punjabi - value: Romanian description: Romanian - value: Russian description: Russian - value: Samoan description: Samoan - value: Scottish Gaelic description: Scottish Gaelic - value: Serbian description: Serbian - value: Shona description: Shona - value: Sindhi description: Sindhi - value: Sinhala description: Sinhala - value: Slovak description: Slovak - value: Slovenian description: Slovenian - value: Somali description: Somali - value: Southern Sotho description: Southern Sotho - value: Spanish description: Spanish - value: Spanish (Latin America) description: Spanish (Latin America) - value: Sundanese description: Sundanese - value: Swahili description: Swahili - value: Swedish description: Swedish - value: Tajik description: Tajik - value: Tamil description: Tamil - value: Telugu description: Telugu - value: Thai description: Thai - value: Turkish description: Turkish - value: Ukrainian description: Ukrainian - value: Urdu description: Urdu - value: Uzbek description: Uzbek - value: Vietnamese description: Vietnamese - value: Welsh description: Welsh - value: Western Frisian description: Western Frisian - value: Xhosa description: Xhosa - value: Yiddish description: Yiddish - value: Yoruba description: Yoruba - value: Zulu description: Zulu - variable: interface label: Interface schema: additional_attrs: true type: dict attrs: - variable: dark_mode label: Dark Mode description: Enable/Disable dark mode. schema: type: string required: true default: auto enum: - value: auto description: Auto - value: dark description: Dark - value: light description: Light - variable: thin_mode label: Thin Mode description: Enable/Disable thin mode (no video thumbnails). schema: type: boolean default: false - variable: feed_menu label: Feed Menu description: List of feeds available on the home page. Defaults to all. Max 4 feed items schema: type: list default: [] items: - variable: feedEntry label: Feed Entry schema: type: string required: true default: "" enum: - value: Popular description: Popular - value: Trending description: Trending - value: Subscriptions description: Subscriptions - value: Playlists description: Playlists - variable: default_home label: Default Home description: Default feed to display on the home page. schema: type: string default: "" enum: - value: "" description: None - value: Popular description: Popular - value: Trending description: Trending - value: Subscriptions description: Subscriptions - value: Playlists description: Playlists - variable: max_results label: Max Results description: Default number of results to display per page. schema: type: int required: true default: 40 - variable: annotations label: Annotations description: Show/hide annotations. schema: type: boolean default: false - variable: annotations_subscribed label: Annotations Subscribed description: Show/hide subscribed annotations. schema: type: boolean default: false - variable: comments label: Comments description: Type of comments to display below video. Exactly 2 Types schema: type: list default: [] items: - variable: commentEntry label: Comment Entry schema: type: string required: true default: "" enum: - value: "" description: None - value: youtube description: Youtube - value: reddit description: Reddit - variable: player_style label: Player Style description: Default player style. schema: type: string required: true default: invidious enum: - value: invidious description: Invidious - value: youtube description: Youtube - variable: related_videos label: Related Videos description: Show/Hide the "related videos" sidebar when watching a video. schema: type: boolean default: true - variable: video_player_behavior label: Video Player Behavior schema: additional_attrs: true type: dict attrs: - variable: autoplay label: Autoplay description: Automatically play videos on page load. schema: type: boolean default: false - variable: continue label: Continue description: Automatically load the "next" video (either next in playlist or proposed) when the current video ends. schema: type: boolean default: false - variable: continue_autoplay label: Continue Autoplay description: Autoplay next video by default. schema: type: boolean default: true - variable: listen label: Listen description: Play videos in Audio-only mode by default. schema: type: boolean default: false - variable: video_loop label: Video Loop description: Loop videos automatically. schema: type: boolean default: false - variable: video_playback_settings label: Video Playback Settings schema: additional_attrs: true type: dict attrs: - variable: quality label: Quality description: Default video quality. schema: type: string required: true default: hd720 enum: - value: hd720 description: HD720 - value: dash description: Dash - value: medium description: Medium - value: small description: Small - variable: quality_dash label: Quality Dash description: Default dash video quality. schema: type: string show_if: [["quality", "=", "dash"]] required: true default: auto enum: - value: auto description: Auto - value: best description: Best - value: 4320p description: 4320p - value: 2160p description: 2160p - value: 1440p description: 1440p - value: 1080p description: 1080p - value: 720p description: 720p - value: 480p description: 480p - value: 480p description: 480p - value: 360p description: 360p - value: 240p description: 240p - value: 144p description: 144p - value: worst description: Worst - variable: speed label: Speed description: Default video playback speed. schema: type: string required: true valid_chars: '^[0-9]+(\.[0-9]{1,2})?$' default: "1.00" - variable: volume label: Volume description: Default volume. schema: type: int min: 1 max: 100 required: true default: 100 - variable: vr_mode label: VR Mode description: Allow 360° videos to be played. schema: type: boolean default: false - variable: subscription_feed label: Subscription Feed schema: additional_attrs: true type: dict attrs: - variable: latest_only label: Latest Only description: In the "Subscription" feed, only show the latest video of each channel the user is subscribed to. schema: type: boolean default: false - variable: notifications_only label: Notifications Only description: Enable/Disable user subscriptions desktop notifications. schema: type: boolean default: false - variable: unseen_only label: Unseen Only description: In the "Subscription" feed, Only show the videos that the user haven't watched yet. schema: type: boolean default: false - variable: sort label: Sort description: Default sorting parameter for subscription feeds. schema: type: string required: true default: published enum: - value: alphabetically description: Alphabetically - value: alphabetically - reverse description: Alphabetically - Reverse - value: channel name description: Channel Name - value: channel name - reverse description: Channel Name - Reverse - value: published description: Published - value: published - reverse description: Published - Reverse - variable: miscellaneous label: Miscellaneous schema: additional_attrs: true type: dict attrs: - variable: local label: Local description: Proxy videos through instance by default. schema: type: boolean default: false - variable: show_nick label: Show Nick description: Show the connected user's nick at the top right. schema: type: boolean default: true - variable: automatic_instance_redirect label: Automatic Instance Redirect description: Automatically redirect to a random instance when the user uses any "switch invidious instance" link schema: type: boolean default: false - variable: extend_desc label: Extend Description description: Show the entire video description schema: type: boolean default: false # Include{containerConfig} # Include{podOptions} # 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: 10594 required: true # Include{serviceExpertRoot} # Include{serviceExpert} # Include{serviceList} # Include{persistenceList} # Include{ingressRoot} - variable: main label: Main Ingress schema: additional_attrs: true type: dict attrs: # Include{ingressDefault} # Include{ingressTLS} # Include{ingressTraefik} # Include{ingressAdvanced} # Include{ingressList} # Include{securityContextRoot} - 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 of the user running the application" schema: type: int default: 0 # Include{securityContextContainer} # Include{securityContextAdvanced} # Include{securityContextPod} - variable: fsGroup label: "fsGroup" description: "The group that should own ALL storage." schema: type: int default: 568 # Include{resources} # Include{advanced} # Include{addons} # Include{codeserver} # Include{netshoot} # Include{vpn} # Include{documentation}