Inštalácia pomocou Dockeru

Pomocou dockerizovaného nasadenia Weblate môžete svoju vlastnú inštanciu Weblate spustiť v priebehu niekoľkých sekúnd. Všetky závislosti Weblate sú už zahrnuté. PostgreSQL je nastavený ako predvolená databáza a Valkey ako caching backend.

Hardvérové požiadavky

Weblate by mal bez problémov bežať na akomkoľvek súčasnom hardvéri, nasledujúca je minimálna konfigurácia potrebná na spustenie Weblate na jednom hostiteľovi (Weblate, databáza a webový server):

  • 3 GB RAM

  • 2 jadrá CPU

  • 1 GB úložného priestoru

Poznámka

Skutočné požiadavky pre vašu inštaláciu Weblate sa výrazne líšia v závislosti od veľkosti prekladov v nej spravovaných.

Využitie pamäte

Čím viac pamäte, tým lepšie - používa sa na cacheovanie na všetkých úrovniach (súborový systém, databáza a Weblate). Pre stovky prekladových komponentov sa odporúča aspoň 4 GB RAM.

Rada

Pre systémy s menším množstvom pamäte, než sa odporúča, sa odporúča Nastavenie Celery s jedným procesom.

Využitie CPU

Veľa súbežných používateľov zvyšuje počet potrebných jadier CPU.

Weblate 2026.8 zaviedol NumPy ako povinnú závislosť. Na systémoch x86-64 vyžaduje optimalizovaný build NumPy pribalený v obraze Docker CPU kompatibilné s x86-64-v2. Bez požadovaných funkcií CPU sa NumPy nepodarí načítať a Weblate sa nespustí.

Pred aktualizáciou skontrolujte požadovanú funkciu CPU SSE4.2 na Linux systéme spúšťajúcom Docker:

grep sse4_2 /proc/cpuinfo

Prázdny výstup indikuje, že požadovaná funkcia CPU nie je dostupná. Toto je predbežná kontrola; nájdenie SSE4.2 neoveruje všetky funkcie CPU x86-64-v2.

Ak Docker beží vo virtuálnom stroji, spustite kontrolu vnútri hosťa. Virtuálne stroje môžu skrývať funkcie CPU podporované hostiteľom. Nakonfigurujte virtuálny stroj tak, aby vystavoval požadované funkcie CPU hostiteľa, potom reštartujte hosťa. Ak fyzický CPU nemá požadované funkcie, povyšte hardvér.

Využitie úložiska

Typické využitie úložiska databázy je okolo 300 MB na 1 milión hosťovaných slov.

Potrebný úložný priestor pre klonované repozitáre sa líši, ale Weblate sa snaží udržiavať ich veľkosť minimálnu pomocou plytkých klonov.

Výkon úložiska

Operácie správy verzií vykonávajú množstvo vyhľadávaní metadátových súborov. Podadresár vcs v DATA_DIR preto potrebuje nízku latenciu čítania; úložisko s pomalým prístupom k metadátam môže spôsobiť, že operácie ako git status budú trvať dlho, aj keď je jeho priepustnosť pre hromadné dáta dobrá. Ak je to možné, uchovávajte CACHE_DIR na lokálnom alebo dočasnom úložisku s nízkou latenciou.

Kontroly nasadenia merajú latenciu vyhľadávania metadát pre obe umiestnenia a varujú, ak medián latencie presiahne 10 milisekúnd. Ide o približné meranie v danom časovom bode ovplyvnené záťažou súborového systému a systému. Pred zmenou konfigurácie úložiska znova spustite weblate check --deploy.

Uzly

Pre malé a stredne veľké stránky (milióny hosťovaných slov) môžu byť všetky komponenty Weblate (pozrite Prehľad architektúry) spustené na jednom uzle.

Keď narastiete na stovky miliónov hosťovaných slov, odporúča sa mať vyhradený uzol pre databázu (pozrite Nastavenie databázy pre Weblate).

Inštalácia

Rada

Nasledujúce príklady predpokladajú, že máte funkčné Docker prostredie s nainštalovaným docker-compose-plugin. Pokyny nájdete v dokumentácii Dockeru.

Týmto sa vytvorí Weblate server nasadený cez HTTP, takže by ste ho mali umiestniť za proxy, ktorá ukončuje HTTPS. Môžete ho nasadiť aj s HTTPS proxy, pozrite Automatické SSL certifikáty pomocou Let’s Encrypt. Pre väčšie inštalácie si pozrite Horizontálne škálovanie.

  1. Naklonujte repozitár weblate-docker:

    git clone https://github.com/WeblateOrg/docker-compose.git weblate-docker
    cd weblate-docker
    

    Poznámka

    Súbory Docker Compose sú ukážkové konfigurácie nasadenia. Prevádzkovatelia ich zvyčajne prispôsobujú pre svoje vlastné nasadenie a udržiavajú tieto lokálne zmeny. Aktualizácie aplikácie Weblate sa dodávajú prostredníctvom tagov obrazov Docker; pre prispôsobené súbory Compose neexistuje aktualizačná cesta viazaná na vydanie.

  2. Vytvorte súbor docker-compose.override.yml so svojimi nastaveniami. Úplný zoznam dostupných premenných prostredia nájdete v Premenné prostredia pre Docker.

    services:
      weblate:
        image: weblate/weblate:latest
        environment:
          WEBLATE_EMAIL_HOST: smtp.example.com
          WEBLATE_EMAIL_HOST_USER: user
          WEBLATE_EMAIL_HOST_PASSWORD: pass
          WEBLATE_SERVER_EMAIL: weblate@example.com
          WEBLATE_DEFAULT_FROM_EMAIL: weblate@example.com
          WEBLATE_SITE_DOMAIN: weblate.example.com
          WEBLATE_ADMIN_PASSWORD: password for the admin user
          WEBLATE_ADMIN_EMAIL: weblate.admin@example.com
        ports:
        - 80:8080
    

    Poznámka

    „Ak nie je nastavená premenná WEBLATE_ADMIN_PASSWORD, administrátorský účet sa vytvorí s náhodným heslom, ktoré sa zobrazí pri prvom spustení.

    Uvedený príklad spôsobí, že Weblate bude počúvať na porte 80. Ak to chcete zmeniť, upravte mapovanie portov v súbore docker-compose.override.yml.

  3. Spustite kontajnery Weblate:

    docker compose up
    

Užite si svoje Weblate nasadenie, je dostupné na porte 80 kontajnera weblate.

Výber registra Docker image-ov

Kontajnery Weblate sú publikované do nasledujúcich registrov:

Poznámka

Všetky príklady momentálne sťahujú image z Docker Hubu. Ak chcete použiť iný register, upravte konfiguráciu podľa potreby.

Výber Docker image tagu

Vyberte si tag, ktorý zodpovedá vášmu prostrediu a očakávaniam:

Názov tagu

Popis

Použitie

latest

Stabilné vydanie Weblate, zodpovedá najnovšiemu označenému vydaniu

Priebežné aktualizácie v produkčnom prostredí

<YEAR>

Stabilné vydanie Weblate

Priebežné aktualizácie v rámci kalendárneho roka v produkčnom prostredí

<YEAR>.<MONTH>

Stabilné vydanie Weblate

Priebežné aktualizácie v rámci mesačného vydania v produkčnom prostredí

<YEAR>.<MONTH>.<PATCH>.<BUILD>

Stabilné vydanie Weblate

Dobre definované nasadenie v produkčnom prostredí

edge

Stabilné vydanie Weblate s vývojovými zmenami v Docker kontajneri (napríklad aktualizované závislosti)

Priebežné aktualizácie v staging prostredí

edge-<DATE>-<SHA>

Stabilné vydanie Weblate s vývojovými zmenami v Docker kontajneri (napríklad aktualizované závislosti)

Dobre definované nasadenie v staging prostredí

bleeding

Vývojová verzia Weblate z Gitu

Priebežné aktualizácie na testovanie pripravovaných funkcií Weblate

bleeding-<DATE>-<SHA>

Vývojová verzia Weblate z Gitu

Dobre definované nasadenie na testovanie pripravovaných funkcií Weblate

Každý obraz (image) je otestovaný naším CI ešte pred zverejnením, takže aj verzia bleeding by mala byť pomerne bezpečná na používanie.

Úplný zoznam publikovaných tagov nájdeš v GitHub Packages

Docker kontajner s podporou HTTPS

Pozri si prosím Inštalácia pre všeobecné pokyny k nasadeniu, táto sekcia uvádza iba rozdiely oproti nim.

Proxy ukončujúci SSL

SSL môže byť ukončené mimo Weblate kontajnera. Aby to spolu správne fungovalo, je potrebné odovzdať kontajneru niekoľko hlavičiek, aby si bol vedomý svojho skutočného prostredia. Tieto hlavičky sú podrobnejšie opísané v Beh za reverzným proxy.

Ukážková konfigurácia nginx reverse proxy pre Docker kontajner.
location / {
    proxy_pass http://127.0.0.1:8080;
    proxy_read_timeout 3600s;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-Proto https;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Host $server_name;
}
Docker kontajnerové prostredie pre externé ukončenie SSL.
WEBLATE_ENABLE_HTTPS=1
WEBLATE_IP_PROXY_HEADER=HTTP_X_FORWARDED_FOR
WEBLATE_TRUSTED_PROXY_ADDRESSES=192.0.2.10

Nahraďte príkladnú adresu dôveryhodného proxy servera adresou alebo sieťou reverzného proxy servera, ako ju vidí kontajner Weblate. Uistite sa, že nedôveryhodní klienti nemôžu dosiahnuť publikovaný port kontajnera obchádzaním reverzného proxy servera.

Používanie vlastných SSL certifikátov

Ak máš vlastný SSL certifikát, ktorý chceš použiť, jednoducho umiestni súbory do dátového zväzku Weblate (pozri Zväzky Docker kontajnera):

  • ssl/fullchain.pem obsahujúci certifikát vrátane všetkých potrebných CA certifikátov

  • ssl/privkey.pem obsahujúci súkromný kľúč

Oba tieto súbory musí vlastniť ten istý používateľ, ktorý spúšťa Docker kontajner, a musia mať nastavenú masku súboru na 600 (čitateľné a zapisovateľné len pre vlastníka).

Okrem toho bude Weblate kontajner teraz akceptovať SSL pripojenia na porte 4443, takže budeš chcieť pridať presmerovanie portu pre HTTPS v docker‑compose override:

version: '3'
services:
  weblate:
    ports:
      - 80:8080
      - 443:4443

Ak už na tom istom serveri hostuješ aj iné stránky, je pravdepodobné, že porty 80 a 443 používa reverse proxy, napríklad NGINX. Na odovzdanie HTTPS pripojenia z NGINX do Docker kontajnera môžeš použiť nasledujúcu konfiguráciu:

server {
    listen 443 ssl;
    listen [::]:443 ssl;

    server_name <SITE_URL>;
    ssl_certificate /etc/letsencrypt/live/<SITE>/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/<SITE>/privkey.pem;

    location / {
            proxy_set_header HOST $host;
            proxy_set_header X-Forwarded-Proto https;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Host $server_name;
            proxy_pass https://127.0.0.1:<EXPOSED_DOCKER_PORT>;
    }
}

Nahraďte hodnoty <SITE_URL>, <SITE> a <EXPOSED_DOCKER_PORT> skutočnými údajmi z vášho prostredia.

Automatické SSL certifikáty pomocou Let’s Encrypt

Ak chcete použiť automaticky generované SSL certifikáty od Let’s Encrypt na verejnej inštalácii, musíte pridať reverzné HTTPS proxy ako dodatočný Docker kontajner, na čo sa použije https-portal. To sa využíva v súbore docker-compose-https.yml. Potom vytvorte súbor docker-compose-https.override.yml so svojimi nastaveniami:

version: '3'
services:
  weblate:
    environment:
      WEBLATE_EMAIL_HOST: smtp.example.com
      WEBLATE_EMAIL_HOST_USER: user
      WEBLATE_EMAIL_HOST_PASSWORD: pass
      WEBLATE_SITE_DOMAIN: weblate.example.com
      WEBLATE_ADMIN_PASSWORD: password for admin user
  https-portal:
    environment:
      DOMAINS: 'weblate.example.com -> http://weblate:8080'

Vždy pri vyvolaní docker compose musíte odovzdať oba súbory a potom urobiť:

docker compose -f docker-compose-https.yml -f docker-compose-https.override.yml build
docker compose -f docker-compose-https.yml -f docker-compose-https.override.yml up

Aktualizácia Docker kontajnera

Zvyčajne je dobrý nápad aktualizovať iba Weblate kontajner a ponechať PostgreSQL kontajner vo verzii, ktorú už používaš, pretože aktualizácia PostgreSQL je pomerne náročná a vo väčšine prípadov neprináša veľa výhod.

Môžeš to urobiť tak, že ponecháš existujúci docker‑compose a jednoducho stiahneš najnovšie image a potom ich reštartuješ:

# Fetch latest versions of the images
docker compose pull
# Stop and destroy the containers
docker compose down
# Spawn new containers in the background
docker compose up -d
# Follow the logs during upgrade
docker compose logs -f

Databáza Weblate by sa mala pri prvom spustení automaticky migrovať a nemalo by byť potrebné žiadne ďalšie manuálne zasahovanie.

Poznámka

Priame aktualizácie sú podporované len pre vydania z aktuálneho alebo predchádzajúceho kalendárneho roka. Ak potrebujete aktualizovať zo staršieho vydania, najprv aktualizujte na prechodnú verziu uvedenú v Pokyny špecifické pre verziu.

Ak používate ukážkové súbory Compose bez lokálnych zmien, môžete si prezrieť aktualizácie aj v repozitári docker-compose, hoci to nie je potrebné pre väčšinu aktualizácií Weblate. Prispôsobené súbory Compose je potrebné udržiavať ako súčasť vášho nasadenia. Pozrite si Aktualizácia PostgreSQL kontajnera pre aktualizáciu servera PostgreSQL.

Aktualizácia PostgreSQL kontajnera

Poznámka

PostgreSQL 18 zmenil predvolený adresár s dátami vo vnútri kontajnera. Staršie bežné nastavenie pripájalo dátový zväzok na /var/lib/postgresql/data, zatiaľ čo PostgreSQL 18 teraz predvolene používa /var/lib/postgresql.

Ak aktualizujete z staršej verzie, buď upravte cieľ pripojenia (mount target) vo svojej Docker konfigurácii na novú cestu, alebo ponechajte pôvodnú cestu a nastavte premennú PGDATA podľa nej.

Ak ponecháte pôvodný cieľ pripojenia nezmenený a nenastavíte premennú PGDATA, môže PostgreSQL zapisovať svoje dáta mimo perzistentného zväzku.

Ďalšie informácie PGDATA nájdete v dokumentácii k premennej.

PostgreSQL kontajnery nepodporujú automatickú aktualizáciu medzi verziami, takže aktualizáciu musíš vykonať manuálne. Nasledujúce kroky ukazujú jednu z možností, ako aktualizáciu vykonať.

  1. Zastaviť Weblate kontajner:

    docker compose stop weblate cache
    
  2. Zálohovanie databázy:

    docker compose exec database pg_dumpall --clean --if-exists --username weblate > backup.sql
    
  3. Zastaviť databázový kontajner:

    docker compose stop database
    
  4. Odstrániť PostgreSQL volume:

    docker compose rm -v database
    docker volume remove weblate-docker_postgres-data
    

    Rada

    Názov zväzku obsahuje názov projektu Docker Compose, ktorý je predvolene rovnaký ako názov adresára — v tejto dokumentácii je to weblate-docker.

  5. Upravte súbor docker-compose.yml tak, aby používal novú verziu PostgreSQL.

  6. Spustiť databázový kontajner:

    docker compose up -d database
    
  7. Obnoviť databázu zo zálohy:

    cat backup.sql | docker compose exec -T database psql --username weblate --dbname weblate
    

    Rada

    Skontrolujte, či sa názov databázy zhoduje s hodnotou premennej POSTGRES_DB.

  8. (Voliteľné) Aktualizujte heslo používateľa Weblate. Toto môže byť potrebné pri prechode na PostgreSQL 14 alebo 15, keďže spôsob ukladania hesiel sa zmenil:

    docker compose exec -T database psql --username weblate --dbname weblate -c "ALTER USER weblate WITH PASSWORD 'weblate'"
    

    Rada

    Skontrolujte, či sa názov databázy zhoduje s hodnotou premennej POSTGRES_DB.

  9. Spustiť všetky zostávajúce kontajnery:

    docker compose up -d
    

Prihlásenie administrátora

Po dokončení nastavenia kontajnera sa môžete prihlásiť ako používateľ admin s heslom uvedeným v premennej WEBLATE_ADMIN_PASSWORD, alebo s náhodne vygenerovaným heslom pri prvom spustení, ak táto premenná nebola nastavená.

Ak chcete resetovať heslo používateľa admin, reštartujte kontajner s premennou WEBLATE_ADMIN_PASSWORD nastavenou na nové heslo.

Počet procesov a spotreba pamäte

Počet procesov pracovníkov pre webovú aplikáciu aj Celery sa určuje automaticky na základe počtu CPU. Toto funguje dobre pre väčšinu cloudových virtuálnych strojov, pretože tie majú zvyčajne málo CPU a dostatok pamäte.

Predvolene jeden kombinovaný pracovník Celery obsluhuje všetky fronty úloh pomocou prefork fondu s trojnásobkom WEBLATE_WORKERS procesov. Zdieľanie počiatočnej pamäte aplikácie medzi všetkými pracovníkmi Celery znižuje spotrebu pamäte, zatiaľ čo vyšší počet procesov zvyšuje priepustnosť úloh.

Ak máte veľa CPU jadier a narážate na problémy s nedostatkom pamäte, skúste znížiť počet workerov:

environment:
  WEBLATE_WORKERS: 2

Kombinovaného pracovníka môžete jemne doladiť:

environment:
  CELERY_COMBINED_OPTIONS: --concurrency 12 --prefetch-multiplier 1

Alternatívne použite režim split na spustenie a jemné doladenie jednotlivých kategórií pracovníkov:

environment:
  CELERY_WORKER_MODE: split
  WEB_WORKERS: 4
  WEB_BLOCKING_THREADS: 4
  CELERY_MAIN_OPTIONS: --concurrency 2 --prefetch-multiplier 1
  CELERY_NOTIFY_OPTIONS: --concurrency 1 --prefetch-multiplier 4
  CELERY_MEMORY_OPTIONS: --concurrency 1 --prefetch-multiplier 1
  CELERY_TRANSLATE_OPTIONS: --concurrency 1 --prefetch-multiplier 1
  CELERY_BACKUP_OPTIONS: --concurrency 1 --prefetch-multiplier 1

Násobiteľ prednačítania riadi, koľko úloh si môže každý vykonávací slot pracovníka rezervovať. Predvolená hodnota jedna zabraňuje rezervácii ďalších dlho trvajúcich úloh alebo úloh s veľkým objemom dát. Pracovník notifikácií v tomto príklade používa hodnotu štyri, pretože jeho krátke úlohy môžu ťažiť z bufferovania. Hodnotu zvyšujte až po zmeraní latencie frontu a spotreby pamäte pracovníka.

Spotrebu pamäte možno ďalej znížiť spustením Celery v jednom procese:

environment:
  CELERY_WORKER_MODE: single

Horizontálne škálovanie

Added in version 4.6.

Môžete spustiť viacero kontajnerov Weblate a škálovať službu horizontálne. Zväzok /app/data musia zdieľať všetky kontajnery — na tento účel sa odporúča použiť klastrový súborový systém, napríklad GlusterFS. Zväzok /app/cache by mal byť pre každý kontajner samostatný.

Každý kontajner Weblate má definovanú svoju úlohu pomocou premennej prostredia WEBLATE_SERVICE. Postupujte podľa dokumentácie veľmi pozorne, keďže niektoré služby majú byť v klastri spustené len raz a zároveň záleží aj na poradí, v akom sa jednotlivé služby spúšťajú.

Príklad nastavenia nájdete v repozitári docker-compose ako docker-compose-split.yml.

Varovania konfigurácie pri spustení

Kontajner Docker zaznamenáva akcieschopné varovania konfigurácie zo štartu v zdieľanom zväzku /app/data. Zobrazujú sa pomocou weblate check --deploy a v rozhraní správy Výkonnostná správa, okrem zápisu do logu kontajnera.

Každý kontajner hlási svoje varovania samostatne. To udržuje varovania z kontajnerov s rôznymi rolami WEBLATE_SERVICE viditeľné v horizontálne škálovanom nasadení. Správy sa obnovujú, kým ich kontajner beží, a odstraňujú sa počas riadneho vypnutia kontajnera. Správy zanechané náhlym vypnutím vypršia po piatich minútach a zastarané súbory správ sa automaticky čistia pri neskorších spusteniach kontajnera.

Premenné prostredia pre Docker

Mnohé z konfigurácií Weblate uvedených v Konfigurácia je možné nastaviť v Docker kontajneri pomocou nižšie popísaných premenných prostredia.

Ak potrebujete nastaviť konfiguráciu, ktorá nie je sprístupnená cez premenné prostredia Dockeru, pozrite si časť Konfigurácia nad rámec premenných prostredia.

Odovzdávanie citlivých údajov

Added in version 5.0.

Kontajner Weblate podporuje odovzdávanie citlivých údajov (secrets) vo forme súborov. Na využitie tejto možnosti pridajte k názvu premennej prostredia príponu _FILE a odovzdajte súbor so secretom cez Docker.

Súvisiaci súbor docker-compose.yml môže vyzerať napríklad takto:

services:
   weblate:
      environment:
         POSTGRES_PASSWORD_FILE: /run/secrets/db_password
      secrets:
         - db_password
   database:
      environment:
         POSTGRES_PASSWORD_FILE: /run/secrets/db_password
      secrets:
         - db_password


secrets:
   db_password:
     file: db_password.txt

Všeobecné nastavenia

WEBLATE_DEBUG

Konfiguruje debug režim Django pomocou DEBUG.

Príklad:

environment:
  WEBLATE_DEBUG: 1
WEBLATE_LOGLEVEL

Konfiguruje podrobnosť logovania. Pre získanie detailnejších záznamov nastavte hodnotu na DEBUG.

Predvolená hodnota je INFO pri vypnutom WEBLATE_DEBUG, a DEBUG sa použije, keď je zapnutý režim ladenia.

Pre tichšie logovanie použite ERROR alebo WARNING.

WEBLATE_LOGLEVEL_DATABASE

Konfiguruje úroveň podrobnosti logovania databázových dopytov.

WEBLATE_LOG_GELF_HOST

Added in version 5.9.

Konfiguruje vzdialené logovanie pomocou GELF pripojenia cez TCP. Dá sa použiť na integráciu s Graylogom.

WEBLATE_LOG_GELF_PORT

Added in version 5.9.

Použije vlastný port pre WEBLATE_LOG_GELF_HOST, predvolená hodnota je 12201.

WEBLATE_SITE_TITLE

Mení názov stránky zobrazovaný v hlavičke všetkých stránok.

WEBLATE_SITE_DOMAIN

Konfiguruje doménu stránky. Tento parameter je povinný a akceptuje názov hostiteľa alebo IPv4 adresu.

Ak používate neštandardný port, zahrňte port medzi 1 a 65535. IPv6 adresy sa momentálne nepodporujú.

Príklad:

environment:
  WEBLATE_SITE_DOMAIN: example.com:8080
WEBLATE_ADMIN_NAME
WEBLATE_ADMIN_EMAIL

Konfiguruje meno a e‑mail správcu stránky. Používa sa pre nastavenie ADMINS aj pri vytváraní používateľa admin (pozri WEBLATE_ADMIN_PASSWORD pre viac informácií).

Príklad:

environment:
  WEBLATE_ADMIN_NAME: Weblate admin
  WEBLATE_ADMIN_EMAIL: noreply@example.com
WEBLATE_ADMIN_PASSWORD

Nastaví heslo pre používateľa admin.

  • Ak nie je nastavené a používateľ admin neexistuje, vytvorí sa s náhodným heslom zobrazeným pri prvom spustení kontajnera.

  • Ak nie je nastavené a používateľ admin existuje, nevykoná sa žiadna akcia.

  • Ak je nastavené, používateľ admin sa pri každom spustení kontajnera upraví tak, aby zodpovedal hodnotám WEBLATE_ADMIN_PASSWORD, WEBLATE_ADMIN_NAME a WEBLATE_ADMIN_EMAIL.

Varovanie

Môže predstavovať bezpečnostné riziko ukladať heslo v konfiguračnom súbore. Zvážte použitie tejto premennej iba pri počiatočnom nastavení (alebo nechajte Weblate vygenerovať náhodné heslo pri prvom spustení) alebo na obnovu hesla.

WEBLATE_ADMIN_NOTIFY_ERROR

Či sa má pri chybe servera odoslať e‑mail administrátorom. Predvolene je táto voľba zapnutá.

Možno budete chcieť používať iný systém na zber chýb, napríklad Sentry alebo Rollbar, a túto voľbu vypnúť.

WEBLATE_SERVER_EMAIL

E‑mailová adresa, z ktorej sa odosielajú chybové hlásenia.

WEBLATE_DEFAULT_FROM_EMAIL

Konfiguruje adresu používanú pre odchádzajúce e‑maily.

WEBLATE_ADMINS_CONTACT

Konfiguruje ADMINS_CONTACT.

WEBLATE_CONTACT_FORM

Konfiguruje správanie kontaktného formulára, pozri CONTACT_FORM.

WEBLATE_ALLOWED_HOSTS

Konfiguruje povolené HTTP hostnames pomocou ALLOWED_HOSTS.

Predvolená hodnota je *, čo povoľuje všetky hostnames.

Príklad:

environment:
  WEBLATE_ALLOWED_HOSTS: weblate.example.com,example.com
WEBLATE_REGISTRATION_OPEN

Konfiguruje, či sú registrácie otvorené, prepnutím hodnoty REGISTRATION_OPEN.

Príklad:

environment:
  WEBLATE_REGISTRATION_OPEN: 0
WEBLATE_REGISTRATION_CAPTCHA

Added in version 5.10.

Konfiguruje, či sa má používať captcha pri registrácii a ďalších neautentifikovaných akciách, pozri REGISTRATION_CAPTCHA.

Príklad:

environment:
  WEBLATE_REGISTRATION_CAPTCHA: 0
WEBLATE_REGISTRATION_ALLOW_BACKENDS

Konfiguruje, ktoré autentifikačné metódy možno použiť na vytvorenie nového účtu pomocou REGISTRATION_ALLOW_BACKENDS.

Príklad:

environment:
  WEBLATE_REGISTRATION_OPEN: 0
  WEBLATE_REGISTRATION_ALLOW_BACKENDS: azuread-oauth2,azuread-tenant-oauth2
WEBLATE_REGISTRATION_REBIND

Added in version 4.16.

Konfiguruje REGISTRATION_REBIND.

WEBLATE_REGISTRATION_ALLOW_DISPOSABLE_EMAILS

Added in version 5.16.1.

Konfiguruje REGISTRATION_ALLOW_DISPOSABLE_EMAILS.

Príklad:

environment:
  WEBLATE_REGISTRATION_ALLOW_DISPOSABLE_EMAILS: 1
WEBLATE_PROJECT_WEB_RESTRICT_PRIVATE

Added in version 5.17.

Konfiguruje PROJECT_WEB_RESTRICT_PRIVATE.

Predvolene je táto voľba zapnutá.

WEBLATE_PROJECT_WEB_RESTRICT_ALLOWLIST

Added in version 5.17.

Konfiguruje PROJECT_WEB_RESTRICT_ALLOWLIST.

Očakáva zoznam dôveryhodných slugov projektov oddelených čiarkami.

WEBLATE_WEBHOOK_RESTRICT_PRIVATE

Added in version 5.17.

Konfiguruje WEBHOOK_RESTRICT_PRIVATE.

Predvolene je táto voľba zapnutá.

WEBLATE_WEBHOOK_PRIVATE_ALLOWLIST

Added in version 5.17.

Konfiguruje WEBHOOK_PRIVATE_ALLOWLIST.

Očakáva zoznam dôveryhodných názvov hostiteľov alebo domén oddelených čiarkami.

WEBLATE_ALLOWED_ASSET_SIZE

Added in version 2025.7.

Konfiguruje ALLOWED_ASSET_SIZE.

WEBLATE_ASSET_RESTRICT_PRIVATE

Added in version 2025.5.

Konfiguruje ASSET_RESTRICT_PRIVATE.

Predvolene je táto voľba zapnutá.

WEBLATE_ASSET_PRIVATE_ALLOWLIST

Added in version 2025.5.

Konfiguruje ASSET_PRIVATE_ALLOWLIST.

Očakáva zoznam dôveryhodných názvov hostiteľov alebo domén oddelených čiarkami.

WEBLATE_TIME_ZONE

Konfiguruje časové pásmo používané vo Weblate, pozri TIME_ZONE.

Poznámka

Ak chcete zmeniť časové pásmo samotného Docker kontajnera, použite premennú prostredia TZ.

Príklad:

environment:
  WEBLATE_TIME_ZONE: Europe/Prague
WEBLATE_ENABLE_HTTPS

Nastaví, aby Weblate predpokladal, že beží za reverzným HTTPS proxy. V dôsledku toho Weblate používa HTTPS v e‑mailových a API odkazoch a nastavuje bezpečnostné príznaky na cookies.

Rada

Prosím, pozrite si dokumentáciu ENABLE_HTTPS pre možné upozornenia.

Poznámka

Toto nenastaví Weblate kontajner tak, aby prijímal HTTPS pripojenia. Je potrebné ich nakonfigurovať samostatne; pozri Docker kontajner s podporou HTTPS pre príklady.

Príklad:

environment:
  WEBLATE_ENABLE_HTTPS: 1
WEBLATE_NGINX_IPV6

Added in version 5.17.

Či má zabudovaný NGINX počúvať aj na IPv6 adresách.

Podporované hodnoty sú:

  • Hodnota auto zapne IPv6 len vtedy, keď je v runtime kontajnera dostupné IPv6. Toto je predvolené nastavenie.

  • Hodnota on vždy zapne počúvanie na IPv6.

  • Hodnota off vypne počúvanie na IPv6.

Príklad:

environment:
  WEBLATE_NGINX_IPV6: auto
WEBLATE_IP_PROXY_HEADER

Umožňuje Weblate získať IP adresu z ľubovoľného HTTP headera. Použite to v prípade, že pred Weblate kontajnerom beží reverzné proxy.

Zapína IP_BEHIND_REVERSE_PROXY a nastavuje IP_PROXY_HEADER.

Keď je nastavené na HTTP_X_FORWARDED_FOR, zabalený nginx rieši adresu klienta pomocou WEBLATE_TRUSTED_PROXY_ADDRESSES, používa túto adresu vo svojich logoch a prepošle jednu normalizovanú adresu do Weblate.

Zmenené vo verzii 2026.9: Zabalený nginx už nedôveruje X-Forwarded-For zo všetkých sieťových adries. Adresy dôveryhodných proxy serverov musia byť nakonfigurované explicitne.

Poznámka

Formát musí zodpovedať očakávaniam Djanga. Django transformuje surové názvy HTTP hlavičiek nasledovne:

  • konvertuje všetky znaky na veľké písmená

  • nahrádza všetky spojovníky podčiarkovníkmi

  • pridáva HTTP_ prefix

„Takže X-Forwarded-For sa premietne na HTTP_X_FORWARDED_FOR.

Príklad:

environment:
  WEBLATE_IP_PROXY_HEADER: HTTP_X_FORWARDED_FOR
  WEBLATE_TRUSTED_PROXY_ADDRESSES: "192.0.2.10 2001:db8::/64 proxy"
WEBLATE_TRUSTED_PROXY_ADDRESSES

Added in version 2026.9.

Konfiguruje adresy IPv4 alebo IPv6, siete alebo názvy hostiteľov reverzných proxy serverov, ktorým dôveruje zabalený nginx pri dodávaní X-Forwarded-For. Viacero hodnôt oddeľte medzerami.

Toto nastavenie sa používa iba vtedy, keď je WEBLATE_IP_PROXY_HEADER nastavené na HTTP_X_FORWARDED_FOR. Ak je zoznam prázdny, nginx použije okamžitého TCP partnera vo svojich logoch a prepošle túto adresu do Weblate.

Uvádzajte iba proxy servery pod vašou kontrolou a nevystavujte kontajner Weblate cez cestu, ktorá ich obchádza.

Príklad:

environment:
  WEBLATE_IP_PROXY_HEADER: HTTP_X_FORWARDED_FOR
  WEBLATE_TRUSTED_PROXY_ADDRESSES: "192.0.2.10 2001:db8::/64 proxy"
WEBLATE_IP_PROXY_OFFSET

Added in version 5.0.1.

Konfiguruje IP_PROXY_OFFSET.

Keď je WEBLATE_IP_PROXY_HEADER nastavené na HTTP_X_FORWARDED_FOR, zabalený nginx prepošle jednu normalizovanú adresu a kontajner používa efektívny posun 0.

WEBLATE_USE_X_FORWARDED_PORT

Added in version 5.0.1.

Boolean hodnota určujúca, či sa má hlavička X-Forwarded-Port uprednostniť pred premennou SERVER_PORT v META údajoch. Toto by malo byť povolené len v prípade, že používate proxy server, ktorý túto hlavičku nastavuje.

Poznámka

Ide o boolean nastavenie (použite \"true\" alebo \"false\").

WEBLATE_SECURE_PROXY_SSL_HEADER

Tica predstavujúca kombináciu HTTP hlavičky a hodnoty, ktorá označuje, že požiadavka je zabezpečená. Toto je potrebné, keď Weblate beží za reverzným proxy serverom, ktorý ukončuje SSL a neposiela štandardné HTTPS hlavičky.

Príklad:

environment:
  WEBLATE_SECURE_PROXY_SSL_HEADER: HTTP_X_FORWARDED_PROTO,https
WEBLATE_REQUIRE_LOGIN

Povolí REQUIRE_LOGIN, aby sa v celom Weblate vyžadovalo prihlásenie.

Príklad:

environment:
  WEBLATE_REQUIRE_LOGIN: 1

Povolí modul Právny modul v Docker nasadeniach. Predvolene je integrácia vypnutá; ponechajte túto premennú nenastavenú alebo prázdnu, ak ju chcete deaktivovať.

Podporované hodnoty sú:

  • tos-confirm na povolenie právneho modulu a vynútenie potvrdenia právnych dokumentov počas sociálnej autentifikácie a pre prihlásených používateľov.

  • wllegal povolí rovnakú integráciu a zároveň načíta hostované šablóny právnych dokumentov z wllegal. Tieto šablóny používa spoločnosť Weblate s.r.o. a nie sú určené na všeobecné použitie.

Ak chcete v Docker nasadení použiť vlastné právne dokumenty, prepisujte šablóny v /app/data/python/customize/templates/legal/documents. Pozrite si aj Nahrádzanie loga a iných statických súborov.

Po zmene tejto premennej prostredia znovu vytvorte Docker kontajner, napríklad pomocou docker compose up -d. Reštartovanie existujúceho kontajnera neaplikuje zmenené hodnoty prostredia.

Príklad:

environment:
  WEBLATE_LEGAL_INTEGRATION: tos-confirm

Konfiguruje LEGAL_DOCUMENT_CSS_CLASS v nasadeniach Docker s povoleným WEBLATE_LEGAL_INTEGRATION.

Nastavte toto na triedu, na ktorú cieli váš vlastný právny štýl. Nastavte na prázdny reťazec na vykreslenie právnych dokumentov bez triedy obalu.

Príklad:

environment:
  WEBLATE_LEGAL_DOCUMENT_CSS_CLASS: ""

Konfiguruje LEGAL_HIDDEN_DOCUMENTS v nasadeniach Docker s povoleným WEBLATE_LEGAL_INTEGRATION.

Poskytnite zoznam identifikátorov stránok právnych dokumentov oddelených čiarkami.

Externé právne dokumenty sa používajú ako záložné riešenie pre skryté interné stránky. Nasledujúca konfigurácia odkazuje na oba dokumenty externe a vyžaduje jednu dohodu pokrývajúcu podmienky poskytovania služby a zásady ochrany osobných údajov:

Príklad:

environment:
  WEBLATE_LEGAL_INTEGRATION: tos-confirm
  WEBLATE_LEGAL_HIDDEN_DOCUMENTS: terms,privacy
  WEBLATE_LEGAL_URL: https://example.com/terms/
  WEBLATE_PRIVACY_URL: https://example.com/privacy/
WEBLATE_PUBLIC_ENGAGE

Povolí PUBLIC_ENGAGE.

WEBLATE_GOOGLE_ANALYTICS_ID

Nastaví ID pre Google Analytics zmenou hodnoty GOOGLE_ANALYTICS_ID.

WEBLATE_DEFAULT_PULL_MESSAGE

Nakonfiguruje predvolený názov a správu pre pull requesty cez API zmenou hodnoty DEFAULT_PULL_MESSAGE.

WEBLATE_SIMPLIFY_LANGUAGES

Nakonfiguruje politiku zjednodušovania jazykov, pozri SIMPLIFY_LANGUAGES.

WEBLATE_HIDE_SHARED_GLOSSARY_COMPONENTS

Skryje slovníkové komponenty pri zdieľaní do iných projektov, pozri HIDE_SHARED_GLOSSARY_COMPONENTS.

WEBLATE_DEFAULT_ACCESS_CONTROL

Nakonfiguruje predvolený Riadenie prístupu pre nové projekty, pozri DEFAULT_ACCESS_CONTROL.

WEBLATE_DEFAULT_TRANSLATION_REVIEW

Added in version 5.16.

Konfiguruje predvolenú hodnotu pre Povoliť kontroly, predvolene vypnuté.

WEBLATE_DEFAULT_SOURCE_REVIEW

Added in version 5.16.

Konfiguruje predvolenú hodnotu pre Povoliť kontroly zdroja, predvolene vypnuté.

WEBLATE_DEFAULT_RESTRICTED_COMPONENT

Nakonfiguruje predvolenú hodnotu pre Obmedzený prístup pri nových komponentoch, pozri DEFAULT_RESTRICTED_COMPONENT.

WEBLATE_DEFAULT_TRANSLATION_PROPAGATION

Nakonfiguruje predvolenú hodnotu pre Povoliť propagáciu prekladu pri nových komponentoch, pozri DEFAULT_TRANSLATION_PROPAGATION.

WEBLATE_DEFAULT_COMMITER_EMAIL

Konfiguruje DEFAULT_COMMITER_EMAIL.

WEBLATE_DEFAULT_COMMITER_NAME

Nastaví DEFAULT_COMMITER_NAME.

WEBLATE_DEFAULT_SHARED_TM

Nastaví DEFAULT_SHARED_TM.

WEBLATE_DEFAULT_AUTOCLEAN_TM

Nastaví DEFAULT_AUTOCLEAN_TM.

WEBLATE_COMMIT_PENDING_HOURS

Nakonfiguruje predvolenú hodnotu pre Vek zmien na zápis pri nových komponentoch, pozri COMMIT_PENDING_HOURS.

WEBLATE_GPG_IDENTITY

Nakonfiguruje podpisovanie zápisov pomocou GPG, pozri WEBLATE_GPG_IDENTITY.

WEBLATE_URL_PREFIX

Nakonfiguruje URL prefix, kde beží Weblate, pozri URL_PREFIX. Nechajte ho prázdne na servírovanie Weblate v koreni, alebo použite segmenty cesty oddelené lomkou začínajúce lomkou, napríklad /translations alebo /tools/translations. Každý segment môže obsahovať písmená ASCII, číslice, _ a -.

WEBLATE_STATIC_URL

Nakonfiguruje URL prefix pre statické súbory poskytované z CACHE_DIR.

WEBLATE_SILENCED_SYSTEM_CHECKS

Nakonfiguruje kontroly, ktoré nechcete zobrazovať, pozri SILENCED_SYSTEM_CHECKS.

WEBLATE_CSP_SCRIPT_SRC
WEBLATE_CSP_IMG_SRC
WEBLATE_CSP_CONNECT_SRC
WEBLATE_CSP_STYLE_SRC
WEBLATE_CSP_FONT_SRC
WEBLATE_CSP_FORM_SRC

Umožňuje upraviť HTTP hlavičku Content-Security-Policy.

WEBLATE_LICENSE_FILTER

Konfiguruje LICENSE_FILTER.

WEBLATE_LICENSE_REQUIRED

Konfiguruje LICENSE_REQUIRED.

WEBLATE_WEBSITE_REQUIRED

Konfiguruje WEBSITE_REQUIRED.

WEBLATE_VERSION_DISPLAY

Konfiguruje VERSION_DISPLAY.

WEBLATE_HIDE_VERSION

Konfiguruje HIDE_VERSION.

WEBLATE_BASIC_LANGUAGES

Konfiguruje BASIC_LANGUAGES.

WEBLATE_DEFAULT_AUTO_WATCH

Konfiguruje DEFAULT_AUTO_WATCH.

WEBLATE_DEFAULT_NOTIFICATIONS

Added in version 2026.10.1.

Configures DEFAULT_NOTIFICATIONS.

Príklad:

environment:
  WEBLATE_DEFAULT_NOTIFICATIONS: 0:1:MentionCommentNotificaton,10:1:LastAuthorCommentNotificaton
WEBLATE_RATELIMIT_ATTEMPTS
WEBLATE_RATELIMIT_LOCKOUT
WEBLATE_RATELIMIT_WINDOW

Added in version 4.6.

Konfiguruje obmedzovač rýchlosti (rate limiter).

Rada

Môžete nastaviť konfiguráciu pre akýkoľvek rozsah obmedzovača rýchlosti. Na to pridajte predponu WEBLATE_ ku ktorejkoľvek hodnote opísanej v Obmedzovanie rýchlosti.

WEBLATE_API_RATELIMIT_ANON
WEBLATE_API_RATELIMIT_USER

Added in version 4.11.

Konfiguruje API_RATELIMIT_ANON a API_RATELIMIT_USER. Predvolene 100/deň pre anonymných a 5000/hodina pre autentifikovaných používateľov.

WEBLATE_API_RATELIMIT_USER_OVERRIDES
WEBLATE_API_RATELIMIT_IP_OVERRIDES

Added in version 2026.10.

Mapovania JSON konfigurujúce API_RATELIMIT_USER_OVERRIDES a API_RATELIMIT_IP_OVERRIDES. Obe majú predvolene prázdne objekty. Použite JSON null na oslobodenie používateľa, IP adresy alebo siete od obmedzovania API.

Napríklad v compose.override.yaml:

services:
  weblate:
    environment:
      WEBLATE_API_RATELIMIT_USER_OVERRIDES: '{"automation":"20000/hour"}'
      WEBLATE_API_RATELIMIT_IP_OVERRIDES: '{"192.0.2.42":null,"198.51.100.0/24":"10000/hour"}'

Pravidlá používateľského mena majú prednosť pred pravidlami IP. Pozrite si Obmedzovanie rýchlosti API pre správanie počítania a požiadavky na konfiguráciu proxy.

WEBLATE_ENABLE_HOOKS

Added in version 4.13.

Konfiguruje ENABLE_HOOKS.

WEBLATE_ENABLE_AVATARS

Added in version 4.6.1.

Konfiguruje ENABLE_AVATARS.

WEBLATE_AVATAR_URL_PREFIX

Added in version 4.15.

Konfiguruje AVATAR_URL_PREFIX.

WEBLATE_AVATAR_URL_TEMPLATE

Added in version 2026.10.

Konfiguruje AVATAR_URL_TEMPLATE.

WEBLATE_LIMIT_TRANSLATION_LENGTH_BY_SOURCE_LENGTH

Added in version 4.9.

Konfiguruje LIMIT_TRANSLATION_LENGTH_BY_SOURCE_LENGTH.

WEBLATE_SSH_EXTRA_ARGS

Added in version 4.9.

Konfiguruje SSH_EXTRA_ARGS.

WEBLATE_BORG_EXTRA_ARGS

Added in version 4.9.

Konfiguruje BORG_EXTRA_ARGS ako čiarkou oddelený zoznam argumentov.

Príklad:

environment:
  WEBLATE_BORG_EXTRA_ARGS: --exclude,vcs/
WEBLATE_ENABLE_SHARING

Added in version 4.14.1.

Konfiguruje ENABLE_SHARING.

WEBLATE_SUPPORT_STATUS_CHECK

Added in version 5.5.

Konfiguruje SUPPORT_STATUS_CHECK.

WEBLATE_EXTRA_HTML_HEAD

Added in version 4.15.

Konfiguruje EXTRA_HTML_HEAD.

WEBLATE_INTERNAL_BOT_EMAIL_TEMPLATE

Added in version 2026.7.1.

Konfiguruje INTERNAL_BOT_EMAIL_TEMPLATE.

WEBLATE_PRIVATE_COMMIT_EMAIL_TEMPLATE

Added in version 4.15.

Konfiguruje PRIVATE_COMMIT_EMAIL_TEMPLATE.

WEBLATE_PRIVATE_COMMIT_EMAIL_OPT_IN

Added in version 4.15.

Konfiguruje PRIVATE_COMMIT_EMAIL_OPT_IN.

WEBLATE_PRIVATE_COMMIT_NAME_TEMPLATE

Added in version 5.16.

Konfiguruje PRIVATE_COMMIT_NAME_TEMPLATE.

WEBLATE_PRIVATE_COMMIT_NAME_OPT_IN

Added in version 5.16.

Konfiguruje PRIVATE_COMMIT_NAME_OPT_IN.

To use private commit e-mails and names by default, set both opt-in variables to False in docker-compose.override.yml:

services:
  weblate:
    environment:
      WEBLATE_PRIVATE_COMMIT_EMAIL_OPT_IN: "False"
      WEBLATE_PRIVATE_COMMIT_NAME_OPT_IN: "False"
      WEBLATE_PRIVATE_COMMIT_EMAIL_TEMPLATE: "user-{user_id}@users.noreply.{site_domain}"
      WEBLATE_PRIVATE_COMMIT_NAME_TEMPLATE: "{site_title} user {user_id}"

The template variables are optional customizations. This e-mail template uses the user ID instead of the username included in the default template. Setting the templates alone leaves private commit identities opt-in.

These defaults apply to new and existing users without explicit commit identity choices. Users can still select their account identity. Existing commits are unchanged.

After changing the environment, run docker compose up -d to recreate the affected containers. Apply the same configuration to separately deployed workers so both web and worker processes use the new defaults.

WEBLATE_UNUSED_ALERT_DAYS

Added in version 4.17.

Konfiguruje UNUSED_ALERT_DAYS.

WEBLATE_REPORT_EXPIRY

Added in version 2026.8.

Konfiguruje REPORT_EXPIRY.

WEBLATE_UPDATE_LANGUAGES

Added in version 4.3.2.

Konfiguruje UPDATE_LANGUAGES.

WEBLATE_VCS_ALLOW_HOSTS

Added in version 5.15.

Konfiguruje VCS_ALLOW_HOSTS.

WEBLATE_VCS_PRIVATE_ALLOWLIST

Added in version 2026.9.

Konfiguruje VCS_PRIVATE_ALLOWLIST.

WEBLATE_VCS_ALLOW_SCHEMES

Added in version 5.15.

Konfiguruje VCS_ALLOW_SCHEMES.

The file scheme is disabled for security reasons. Including it prevents Weblate from starting.

WEBLATE_VCS_RESTRICT_PRIVATE

Added in version 5.17.

Konfiguruje VCS_RESTRICT_PRIVATE.

WEBLATE_VCS_CLONE_DEPTH

Added in version 5.4.

Konfiguruje VCS_CLONE_DEPTH.

WEBLATE_VCS_API_DELAY

Added in version 5.4.

Konfiguruje VCS_API_DELAY.

WEBLATE_VCS_API_TIMEOUT

Added in version 5.15.

Konfiguruje VCS_API_TIMEOUT.

WEBLATE_CORS_ALLOWED_ORIGINS

Added in version 4.16.

Umožňuje API spracovať CORS požiadavky z určených domén.

Príklad:

environment:
  WEBLATE_CORS_ALLOWED_ORIGINS: https://example.com,https://weblate.org
WEBLATE_CORS_ALLOW_ALL_ORIGINS

Added in version 5.6.1: Umožňuje API spracovať CORS požiadavky zo všetkých domén.

WEBLATE_WEBSITE_ALERTS_ENABLED

Added in version 5.17.

Konfiguruje WEBSITE_ALERTS_ENABLED.

CLIENT_MAX_BODY_SIZE

Added in version 4.16.3.

Konfiguruje maximálnu veľkosť tela akceptovanú vstavaným webovým serverom. Použite nezáporné celé číslo s voliteľnou príponou k, m alebo g. Prípona nerozlišuje veľkosť písmen a 0 vypína limit veľkosti tela požiadavky.

environment:
    CLIENT_MAX_BODY_SIZE: 200m

Rada

Táto premenná zámerne neobsahuje predponu WEBLATE_, pretože je zdieľaná s kontajnerom tretej strany používaným v Automatické SSL certifikáty pomocou Let’s Encrypt.

WEBLATE_TRANSLATION_UPLOAD_MAX_SIZE

Konfiguruje TRANSLATION_UPLOAD_MAX_SIZE.

Hodnota je v bajtoch.

WEBLATE_COMPONENT_ZIP_UPLOAD_MAX_SIZE

Konfiguruje COMPONENT_ZIP_UPLOAD_MAX_SIZE.

Hodnota je v bajtoch.

WEBLATE_PROJECT_BACKUP_UPLOAD_MAX_SIZE

Konfiguruje PROJECT_BACKUP_UPLOAD_MAX_SIZE.

Hodnota je v bajtoch. Uistite sa, že CLIENT_MAX_BODY_SIZE je tiež dostatočne veľká pre nahrané záložné súbory.

WEBLATE_PROJECT_BACKUP_IMPORT_MAX_MEMBERS

Added in version 2026.5.

Konfiguruje PROJECT_BACKUP_IMPORT_MAX_MEMBERS.

WEBLATE_PROJECT_BACKUP_IMPORT_MAX_TOTAL_UNCOMPRESSED_SIZE

Added in version 2026.5.

Konfiguruje PROJECT_BACKUP_IMPORT_MAX_TOTAL_UNCOMPRESSED_SIZE.

Hodnota je v bajtoch.

WEBLATE_PROJECT_BACKUP_IMPORT_MAX_COMPRESSED_ENTRY_SIZE

Added in version 2026.5.

Konfiguruje PROJECT_BACKUP_IMPORT_MAX_COMPRESSED_ENTRY_SIZE.

Hodnota je v bajtoch.

WEBLATE_PROJECT_BACKUP_IMPORT_MIN_RATIO_SIZE

Added in version 2026.5.

Konfiguruje PROJECT_BACKUP_IMPORT_MIN_RATIO_SIZE.

Hodnota je v bajtoch.

WEBLATE_PROJECT_BACKUP_IMPORT_MAX_COMPRESSED_ENTRY_RATIO

Added in version 2026.5.

Konfiguruje PROJECT_BACKUP_IMPORT_MAX_COMPRESSED_ENTRY_RATIO.

Poverenia pre stránky na hosťovanie kódu

V kontajneri Docker je možné poverenia pre hosťovanie kódu nakonfigurovať buď v samostatných premenných, alebo pomocou slovníka Python na ich hromadné nastavenie. Nasledujúce príklady sú pre GitHub pull requesty, ale platia pre všetky Integrácia verziovania s príslušne zmenenými názvami premenných.

Dôležité

Všetky názvy premenných prostredia musia obsahovať predponu WEBLATE_. Napríklad, na konfiguráciu prihlasovacích údajov GitHub použite WEBLATE_GITHUB_USERNAME, nie GITHUB_USERNAME. Toto platí či už konfigurujete pre pull requesty alebo akúkoľvek inú integráciu VCS.

Príklad konfigurácie pre GitHub pull requesty môže vyzerať takto:

WEBLATE_GITHUB_USERNAME=api-user
WEBLATE_GITHUB_TOKEN=api-token
WEBLATE_GITHUB_HOST=api.github.com

Bude použité ako:

GITHUB_CREDENTIALS = {
    "api.github.com": {
        "username": "api-user",
        "token": "api-token",
    }
}

Alternatívne môže byť Python slovník poskytnutý ako reťazec:

WEBLATE_GITHUB_CREDENTIALS='{ "api.github.com": { "username": "api-user", "token": "api-token", } }'

Alebo cesta k súboru obsahujúcemu Python slovník:

echo '{ "api.github.com": { "username": "api-user", "token": "api-token", } }' > /path/to/github-credentials
WEBLATE_GITHUB_CREDENTIALS_FILE='/path/to/github-credentials'
WEBLATE_GITHUB_USERNAME
WEBLATE_GITHUB_TOKEN
WEBLATE_GITHUB_HOST
WEBLATE_GITHUB_CREDENTIALS

Konfiguruje GitHub pull requesty zmenou GITHUB_CREDENTIALS.

WEBLATE_GITHUB_LEGACY_APP_WEBHOOK_SECRET

Added in version 2026.8.

Konfiguruje GITHUB_LEGACY_APP_WEBHOOK_SECRET. Variant _FILE možno použiť na načítanie tajomstva zo súboru.

Aplikácie GitHub registrované prostredníctvom toku manifestu v aplikácii sú uložené v databáze a nepotrebujú premenné prostredia. Pozrite Oznámenia GitHub.

WEBLATE_GITLAB_USERNAME
WEBLATE_GITLAB_TOKEN
WEBLATE_GITLAB_HOST
WEBLATE_GITLAB_CREDENTIALS

Konfiguruje GitLab merge requesty zmenou GITLAB_CREDENTIALS.

WEBLATE_GITEA_USERNAME
WEBLATE_GITEA_TOKEN
WEBLATE_GITEA_HOST
WEBLATE_GITEA_CREDENTIALS

Konfiguruje Gitea pull requesty zmenou GITEA_CREDENTIALS.

WEBLATE_PAGURE_USERNAME
WEBLATE_PAGURE_TOKEN
WEBLATE_PAGURE_HOST
WEBLATE_PAGURE_CREDENTIALS

Konfiguruje Pagure merge requesty zmenou PAGURE_CREDENTIALS.

WEBLATE_BITBUCKETSERVER_USERNAME
WEBLATE_BITBUCKETSERVER_TOKEN
WEBLATE_BITBUCKETSERVER_HOST
WEBLATE_BITBUCKETSERVER_CREDENTIALS

Konfiguruje Bitbucket Data Center pull requesty zmenou BITBUCKETSERVER_CREDENTIALS.

WEBLATE_BITBUCKETCLOUD_USERNAME
WEBLATE_BITBUCKETCLOUD_WORKSPACE
WEBLATE_BITBUCKETCLOUD_TOKEN
WEBLATE_BITBUCKETCLOUD_HOST
WEBLATE_BITBUCKETCLOUD_CREDENTIALS

Konfiguruje Bitbucket Cloud pull requesty zmenou BITBUCKETCLOUD_CREDENTIALS.

WEBLATE_AZURE_DEVOPS_USERNAME
WEBLATE_AZURE_DEVOPS_ORGANIZATION
WEBLATE_AZURE_DEVOPS_TOKEN
WEBLATE_AZURE_DEVOPS_HOST
WEBLATE_AZURE_DEVOPS_CREDENTIALS

Konfiguruje Azure DevOps pull requesty zmenou AZURE_DEVOPS_CREDENTIALS.

Nastavenia automatických návrhov

Zmenené vo verzii 4.13: Služby automatických návrhov sa teraz konfigurujú v používateľskom rozhraní, pozrite Automatické návrhy.

Existujúce premenné prostredia sa importujú počas migrácie na Weblate 4.13, ale ich ďalšia zmena nebude mať žiadny účinok.

Nastavenia autentifikácie

Rada

Autentifikácia založená na e-maile je zapnutá, pokiaľ nie je vypnutá premennou WEBLATE_NO_EMAIL_AUTH.

LDAP

WEBLATE_AUTH_LDAP_SERVER_URI
WEBLATE_AUTH_LDAP_USER_DN_TEMPLATE
WEBLATE_AUTH_LDAP_USER_ATTR_MAP
WEBLATE_AUTH_LDAP_BIND_DN
WEBLATE_AUTH_LDAP_BIND_PASSWORD
WEBLATE_AUTH_LDAP_CONNECTION_OPTION_REFERRALS
WEBLATE_AUTH_LDAP_USER_SEARCH_FILTER
WEBLATE_AUTH_LDAP_USER_SEARCH_UNION
WEBLATE_AUTH_LDAP_USER_SEARCH_UNION_DELIMITER

Konfigurácia LDAP autentifikácie.

Príklad pre priame viazanie:

environment:
  WEBLATE_AUTH_LDAP_SERVER_URI: ldap://ldap.example.org
  WEBLATE_AUTH_LDAP_USER_DN_TEMPLATE: uid=%(user)s,ou=People,dc=example,dc=net
  # map weblate 'full_name' to ldap 'name' and weblate 'email' attribute to 'mail' ldap attribute.
  # another example that can be used with OpenLDAP: 'full_name:cn,email:mail'
  WEBLATE_AUTH_LDAP_USER_ATTR_MAP: full_name:name,email:mail

Príklad pre vyhľadanie a viazanie:

environment:
  WEBLATE_AUTH_LDAP_SERVER_URI: ldap://ldap.example.org
  WEBLATE_AUTH_LDAP_BIND_DN: CN=ldap,CN=Users,DC=example,DC=com
  WEBLATE_AUTH_LDAP_BIND_PASSWORD: password
  WEBLATE_AUTH_LDAP_USER_ATTR_MAP: full_name:name,email:mail
  WEBLATE_AUTH_LDAP_USER_SEARCH: CN=Users,DC=example,DC=com

Príklad pre zjednotené vyhľadanie a viazanie:

environment:
  WEBLATE_AUTH_LDAP_SERVER_URI: ldap://ldap.example.org
  WEBLATE_AUTH_LDAP_BIND_DN: CN=ldap,CN=Users,DC=example,DC=com
  WEBLATE_AUTH_LDAP_BIND_PASSWORD: password
  WEBLATE_AUTH_LDAP_USER_ATTR_MAP: full_name:name,email:mail
  WEBLATE_AUTH_LDAP_USER_SEARCH_UNION: ou=users,dc=example,dc=com|ou=otherusers,dc=example,dc=com

Príklad s vyhľadaním a viazaním voči Active Directory:

environment:
  WEBLATE_AUTH_LDAP_BIND_DN: CN=ldap,CN=Users,DC=example,DC=com
  WEBLATE_AUTH_LDAP_BIND_PASSWORD: password
  WEBLATE_AUTH_LDAP_SERVER_URI: ldap://ldap.example.org
  WEBLATE_AUTH_LDAP_CONNECTION_OPTION_REFERRALS: 0
  WEBLATE_AUTH_LDAP_USER_ATTR_MAP: full_name:name,email:mail
  WEBLATE_AUTH_LDAP_USER_SEARCH: CN=Users,DC=example,DC=com
  WEBLATE_AUTH_LDAP_USER_SEARCH_FILTER: (sAMAccountName=%(user)s)

GitHub

WEBLATE_SOCIAL_AUTH_GITHUB_KEY
WEBLATE_SOCIAL_AUTH_GITHUB_SECRET
WEBLATE_SOCIAL_AUTH_GITHUB_ORG_KEY
WEBLATE_SOCIAL_AUTH_GITHUB_ORG_SECRET
WEBLATE_SOCIAL_AUTH_GITHUB_ORG_NAME
WEBLATE_SOCIAL_AUTH_GITHUB_TEAM_KEY
WEBLATE_SOCIAL_AUTH_GITHUB_TEAM_SECRET
WEBLATE_SOCIAL_AUTH_GITHUB_TEAM_ID

Povoľuje Autentifikácia GitHub.

GitHub Enterprise Edition

WEBLATE_SOCIAL_AUTH_GITHUB_ENTERPRISE_KEY
WEBLATE_SOCIAL_AUTH_GITHUB_ENTERPRISE_SECRET
WEBLATE_SOCIAL_AUTH_GITHUB_ENTERPRISE_URL
WEBLATE_SOCIAL_AUTH_GITHUB_ENTERPRISE_API_URL
WEBLATE_SOCIAL_AUTH_GITHUB_ENTERPRISE_SCOPE

Povoľuje Autentifikácia GitHub EE.

Bitbucket

WEBLATE_SOCIAL_AUTH_BITBUCKET_OAUTH2_KEY
WEBLATE_SOCIAL_AUTH_BITBUCKET_OAUTH2_SECRET

Povoľuje Autentifikácia Bitbucket.

Facebook

WEBLATE_SOCIAL_AUTH_FACEBOOK_KEY
WEBLATE_SOCIAL_AUTH_FACEBOOK_SECRET

Povoľuje Facebook OAuth 2.

Google

WEBLATE_SOCIAL_AUTH_GOOGLE_OAUTH2_KEY
WEBLATE_SOCIAL_AUTH_GOOGLE_OAUTH2_SECRET
WEBLATE_SOCIAL_AUTH_GOOGLE_OAUTH2_WHITELISTED_DOMAINS
WEBLATE_SOCIAL_AUTH_GOOGLE_OAUTH2_WHITELISTED_EMAILS

Povoľuje Google OAuth 2.

GitLab

WEBLATE_SOCIAL_AUTH_GITLAB_KEY
WEBLATE_SOCIAL_AUTH_GITLAB_SECRET
WEBLATE_SOCIAL_AUTH_GITLAB_API_URL

Povoľuje GitLab OAuth 2.

Gitea

WEBLATE_SOCIAL_AUTH_GITEA_API_URL
WEBLATE_SOCIAL_AUTH_GITEA_KEY
WEBLATE_SOCIAL_AUTH_GITEA_SECRET

Povoľuje autentifikáciu Gitea.

Microsoft Entra ID

WEBLATE_SOCIAL_AUTH_AZUREAD_OAUTH2_KEY
WEBLATE_SOCIAL_AUTH_AZUREAD_OAUTH2_SECRET

Povoľuje autentifikáciu Microsoft Entra ID, pozrite Microsoft Entra ID.

Microsoft Entra ID s podporou tenantov

WEBLATE_SOCIAL_AUTH_AZUREAD_TENANT_OAUTH2_KEY
WEBLATE_SOCIAL_AUTH_AZUREAD_TENANT_OAUTH2_SECRET
WEBLATE_SOCIAL_AUTH_AZUREAD_TENANT_OAUTH2_TENANT_ID

Povoľuje autentifikáciu Microsoft Entra ID s podporou tenantov, pozrite Microsoft Entra ID.

Keycloak

WEBLATE_SOCIAL_AUTH_KEYCLOAK_KEY
WEBLATE_SOCIAL_AUTH_KEYCLOAK_SECRET
WEBLATE_SOCIAL_AUTH_KEYCLOAK_PUBLIC_KEY
WEBLATE_SOCIAL_AUTH_KEYCLOAK_ALGORITHM
WEBLATE_SOCIAL_AUTH_KEYCLOAK_AUTHORIZATION_URL
WEBLATE_SOCIAL_AUTH_KEYCLOAK_ACCESS_TOKEN_URL
WEBLATE_SOCIAL_AUTH_KEYCLOAK_TITLE
WEBLATE_SOCIAL_AUTH_KEYCLOAK_IMAGE

Povoľuje autentifikáciu Keycloak, pozrite Keycloak - Open Source Red Hat SSO.

WEBLATE_SOCIAL_AUTH_KEYCLOAK_ID_KEY

Added in version 5.17.

Konfiguruje, ktorý nárok (claim) sa použije ako jedinečný identifikátor používateľa z Keycloak. Predvolené je email.

Rada

Keď je Keycloak nakonfigurovaný na abstrakciu IDP tretej strany, budete musieť nakonfigurovať WEBLATE_CSP_FORM_SRC pre doménu IDP tretej strany.

Príklad, keď Keycloak odovzdáva autentifikáciu Microsoftu.
environment:
  WEBLATE_CSP_FORM_SRC: login.microsoftonline.com

Dodávatelia Linuxu

Môžete povoliť autentifikáciu pomocou autentifikačných služieb dodávateľov Linuxu nastavením nasledujúcich premenných na ľubovoľnú hodnotu.

WEBLATE_SOCIAL_AUTH_FEDORA
WEBLATE_SOCIAL_AUTH_OPENSUSE
WEBLATE_SOCIAL_AUTH_OPENINFRA
WEBLATE_SOCIAL_AUTH_UBUNTU

Slack

WEBLATE_SOCIAL_AUTH_SLACK_KEY
WEBLATE_SOCIAL_AUTH_SLACK_SECRET

Povoľuje autentifikáciu Slack, pozrite Slack.

OpenID Connect

Added in version 4.13-1.

WEBLATE_SOCIAL_AUTH_OIDC_OIDC_ENDPOINT
WEBLATE_SOCIAL_AUTH_OIDC_KEY
WEBLATE_SOCIAL_AUTH_OIDC_SECRET
WEBLATE_SOCIAL_AUTH_OIDC_USERNAME_KEY
WEBLATE_SOCIAL_AUTH_OIDC_TITLE
WEBLATE_SOCIAL_AUTH_OIDC_IMAGE

Konfiguruje všeobecnú integráciu OpenID Connect.

Fedora OpenID Connect

Added in version 5.15.

WEBLATE_SOCIAL_AUTH_FEDORA_OIDC_KEY
WEBLATE_SOCIAL_AUTH_FEDORA_OIDC_SECRET

Konfiguruje integráciu Fedora OpenID Connect.

Viď aj

Fedora

SAML

Samo podpísané SAML kľúče sa automaticky vygenerujú pri prvom spustení kontajnera. Ak chcete použiť vlastné kľúče, umiestnite certifikát a súkromný kľúč do /app/data/ssl/saml.crt a /app/data/ssl/saml.key.

WEBLATE_SAML_IDP_ENTITY_ID
WEBLATE_SAML_IDP_URL
WEBLATE_SAML_IDP_X509CERT
WEBLATE_SAML_IDP_IMAGE
WEBLATE_SAML_IDP_TITLE

Nastavenia SAML Identity Provider, pozrite Autentifikácia SAML.

WEBLATE_SAML_SECURITY_CONFIG

Added in version 2026.6.

Bezpečnostná konfigurácia SAML ako objekt JSON, odovzdaná do SOCIAL_AUTH_SAML_SECURITY_CONFIG. Napríklad na zakázanie requestedAuthnContext (potrebné pre niektorých poskytovateľov identity, ako je Microsoft Entra ID s viacúrovňovým overovaním):

environment:
  WEBLATE_SAML_SECURITY_CONFIG: '{"requestedAuthnContext": false}'
WEBLATE_SAML_ID_ATTR_FULL_NAME
WEBLATE_SAML_ID_ATTR_FIRST_NAME
WEBLATE_SAML_ID_ATTR_LAST_NAME
WEBLATE_SAML_ID_ATTR_USERNAME
WEBLATE_SAML_ID_ATTR_EMAIL
WEBLATE_SAML_ID_ATTR_USER_PERMANENT_ID

Added in version 4.18.

Mapovanie SAML atribútov.

Ďalšie nastavenia autentifikácie

WEBLATE_NO_EMAIL_AUTH

Vypína e-mailovú autentifikáciu, keď je nastavená na ľubovoľnú hodnotu. Pozrite Vypnutie autentifikácie heslom.

WEBLATE_MIN_PASSWORD_SCORE

Minimálne skóre hesla podľa odhadovača sily hesla zxcvbn. Predvolené je 3, nastavte na 0 pre vypnutie kontroly sily.

Nastavenie databázy PostgreSQL

Databáza je vytvorená súborom docker-compose.yml, takže tieto nastavenia ovplyvňujú kontajnery Weblate aj PostgreSQL.

POSTGRES_PASSWORD

Heslo PostgreSQL.

POSTGRES_USER

Meno používateľa PostgreSQL.

POSTGRES_DB

Názov databázy PostgreSQL.

POSTGRES_HOST

Názov hostiteľa alebo IP adresa servera PostgreSQL. Predvolené je database.

POSTGRES_PORT

Port servera PostgreSQL. Predvolené je žiadny (používa predvolenú hodnotu).

POSTGRES_SSL_MODE

Nakonfigurujte, ako PostgreSQL spravuje SSL pri pripojení k serveru, možné voľby nájdete v Popisy režimov SSL.

POSTGRES_ALTER_ROLE

Konfiguruje názov roly PostgreSQL, ktorá sa má upraviť počas migrácie databázy, pozrite Konfigurácia Weblate na použitie PostgreSQL.

Predvolené je POSTGRES_USER.

POSTGRES_CONN_MAX_AGE

Added in version 4.8.1.

Životnosť pripojenia k databáze v sekundách ako celé číslo. Použite 0 na uzatvorenie pripojení k databáze na konci každej požiadavky.

Zmenené vo verzii 5.1: Predvolené správanie je mať neobmedzené trvalé pripojenia k databáze.

Povolenie trvalosti pripojenia zvyčajne spôsobí viac otvorených pripojení k databáze. Pred povolením upravte konfiguráciu databázy.

Príklad konfigurácie:

environment:
    POSTGRES_CONN_MAX_AGE: 3600
POSTGRES_DISABLE_SERVER_SIDE_CURSORS

Added in version 4.9.1.

Vypnúť kurzory na strane servera v databáze. Toto je potrebné v niektorých nastaveniach pgbouncer.

Príklad konfigurácie:

environment:
    POSTGRES_DISABLE_SERVER_SIDE_CURSORS: 1
WEBLATE_DATABASES

Added in version 5.1.

Nastavte na false na zakázanie konfigurácie pripojenia k databáze založenej na prostredí. Na manuálnu konfiguráciu pripojenia k databáze použite Prepísanie nastavení zo zväzku dát.

Nastavenia zálohovania databázy

WEBLATE_DATABASE_BACKUP

Konfiguruje denný výpis databázy pomocou DATABASE_BACKUP. Predvolené je plain.

Nastavenie servera úložiska dát

Použitie Valkey alebo Redis je vyžadované kontajnerom Weblate a musíte poskytnúť parametre pripojenia pri spúšťaní Weblate v Dockeri.

REDIS_HOST

Názov hostiteľa alebo IP adresa servera úložiska dát. Predvolené je cache.

REDIS_PORT

Port servera úložiska dát. Predvolené je 6379.

REDIS_DB

Číslo databázy úložiska dát, predvolené je 1.

REDIS_USER

Added in version 5.13: Používateľ databázy úložiska dát, predvolene nepoužívané.

REDIS_PASSWORD

Heslo servera úložiska dát, predvolene nepoužívané.

REDIS_TLS

Povoľuje použitie SSL pre pripojenie k úložisku dát.

REDIS_VERIFY_SSL

Môže sa použiť na vypnutie overovania SSL certifikátu pre pripojenie k úložisku dát.

Nastavenie e-mailového servera

Aby fungovala odchádzajúca pošta, musíte poskytnúť poštový server.

Príklad konfigurácie TLS:

environment:
    WEBLATE_EMAIL_HOST: smtp.example.com
    WEBLATE_EMAIL_HOST_USER: user
    WEBLATE_EMAIL_HOST_PASSWORD: pass

Príklad konfigurácie SSL:

environment:
    WEBLATE_EMAIL_HOST: smtp.example.com
    WEBLATE_EMAIL_PORT: 465
    WEBLATE_EMAIL_HOST_USER: user
    WEBLATE_EMAIL_HOST_PASSWORD: pass
    WEBLATE_EMAIL_USE_TLS: 0
    WEBLATE_EMAIL_USE_SSL: 1
WEBLATE_EMAIL_HOST

Názov hostiteľa alebo IP adresa poštového servera.

WEBLATE_EMAIL_PORT

Port poštového servera, predvolené je 25.

Viď aj

EMAIL_PORT

WEBLATE_EMAIL_HOST_USER

Používateľ pre e-mailovú autentifikáciu.

Viď aj

EMAIL_HOST_USER

WEBLATE_EMAIL_HOST_PASSWORD

Heslo pre e-mailovú autentifikáciu.

WEBLATE_EMAIL_USE_SSL

Či použiť implicitné TLS (zabezpečené) pripojenie pri komunikácii so SMTP serverom. Vo väčšine e-mailovej dokumentácie sa tento typ TLS pripojenia označuje ako SSL. Zvyčajne sa používa na porte 465. Ak máte problémy, pozrite explicitné nastavenie TLS WEBLATE_EMAIL_USE_TLS.

Zmenené vo verzii 4.11: Podpora SSL/TLS je automaticky povolená na základe WEBLATE_EMAIL_PORT.

WEBLATE_EMAIL_USE_TLS

Či použiť TLS (zabezpečené) pripojenie pri komunikácii so SMTP serverom. Toto sa používa pre explicitné TLS pripojenia, zvyčajne na porte 587 alebo 25. Ak máte problémy s visiacimi pripojeniami, pozrite implicitné nastavenie TLS WEBLATE_EMAIL_USE_SSL.

Zmenené vo verzii 4.11: Podpora SSL/TLS je automaticky povolená na základe WEBLATE_EMAIL_PORT.

WEBLATE_EMAIL_BACKEND

Konfiguruje Django back-end na odosielanie e-mailov.

Nastavte na django_ses.SESBackend na použitie AWS SES.

WEBLATE_AWS_SES_REGION_NAME

Oblasť AWS pre SES (napr. us-east-1). Nastaví AWS_SES_REGION_NAME a odvodzuje WEBLATE_AWS_SES_REGION_ENDPOINT automaticky, pokiaľ nie je táto premenná nastavená explicitne. Ak nie je nastavená, oblasť musí byť dostupná prostredníctvom štandardného reťazca poverení boto3 (napr. AWS_DEFAULT_REGION alebo profil AWS).

WEBLATE_AWS_SES_REGION_ENDPOINT

Názov hostiteľa koncového bodu SES. Keď je nastavený, odovzdá sa priamo do django-ses bez ohľadu na WEBLATE_AWS_SES_REGION_NAME. Ak nie je nastavený, ale WEBLATE_AWS_SES_REGION_NAME je poskytnutý, predvolene email.<region>.amazonaws.com. Prepíšte pri použití VPC alebo vlastného koncového bodu.

WEBLATE_USE_SES_V2

Nastavte na true na použitie API SES v2 (SendEmail) namiesto staršieho volania SendRawEmail. Boolean nastavenie (použite \"true\" alebo \"false\").

WEBLATE_AUTO_UPDATE

Konfiguruje, či a ako má Weblate aktualizovať repozitáre.

Predvolená hodnota "false" sťahuje vzdialené zmeny denne bez ich zlúčenia do pracovnej kópie; nezakazuje denné aktualizácie. Nastavte na "true", aby sa vzdialené zmeny zlúčili aj do pracovnej kópie.

Viď aj

AUTO_UPDATE pre podrobnosti o tom, ako sú aktualizácie plánované počas dňa.

Poznámka

Toto je booleovské nastavenie (použite \"true\" alebo \"false\").

Integrácia stránky

WEBLATE_GET_HELP_URL

Konfiguruje GET_HELP_URL.

WEBLATE_STATUS_URL

Konfiguruje STATUS_URL.

Konfiguruje LEGAL_URL.

WEBLATE_PRIVACY_URL

Konfiguruje PRIVACY_URL.

WEBLATE_PASSWORD_RESET_URL

Konfiguruje PASSWORD_RESET_URL.

Zhromažďovanie hlásení chýb a monitorovanie výkonu

Odporúča sa systematicky zbierať chyby z inštalácie, pozrite Zhromažďovanie hlásení chýb a monitorovanie výkonu.

Na povolenie podpory Rollbar nastavte nasledujúce:

ROLLBAR_KEY

Váš prístupový token pre Rollbar post server.

ROLLBAR_ENVIRONMENT

Vaše Rollbar prostredie, predvolené je production.

Na povolenie podpory Sentry nastavte nasledujúce:

SENTRY_DSN

Váš Sentry DSN, pozrite SENTRY_DSN.

SENTRY_ENVIRONMENT

Vaše Sentry prostredie (voliteľné), predvolené je WEBLATE_SITE_DOMAIN.

SENTRY_MONITOR_BEAT_TASKS

Či monitorovať úlohy Celery Beat pomocou Sentry, predvolené je True.

SENTRY_TRACES_SAMPLE_RATE

Konfiguruje SENTRY_TRACES_SAMPLE_RATE.

Príklad:

environment:
  SENTRY_TRACES_SAMPLE_RATE: 0.5
SENTRY_PROFILES_SAMPLE_RATE

Konfiguruje SENTRY_PROFILES_SAMPLE_RATE.

Príklad:

environment:
  SENTRY_PROFILES_SAMPLE_RATE: 0.5
SENTRY_SEND_PII

Konfiguruje SENTRY_SEND_PII.

Ak chcete povoliť podporu pre Google Cloud Error Reporting, nastavte nasledovné:

GOOGLE_CLOUD_ERROR_REPORTING_ENABLED

Povolí GOOGLE_CLOUD_ERROR_REPORTING, predvolená hodnota je False.

GOOGLE_CLOUD_ERROR_REPORTING_PROJECT

Projekt Google Cloud, do ktorého sa majú hlásiť chyby. Ak nie je zadaný, klient Google použije predvolené poverenia aplikácie na detekciu projektu.

GOOGLE_CLOUD_ERROR_REPORTING_SERVICE

Názov služby, ktorý sa má použiť v Google Cloud Error Reporting, predvolená hodnota je weblate.

Ak chcete povoliť podporu trasovania OpenTelemetry, nastavte nasledovné:

OPENTELEMETRY_ENABLED

Povolí OPENTELEMETRY_ENABLED, predvolená hodnota je False.

OPENTELEMETRY_EXPORTER_OTLP_ENDPOINT

Konfiguruje OPENTELEMETRY_EXPORTER_OTLP_ENDPOINT.

Príklad:

environment:
  OPENTELEMETRY_ENABLED: true
  OPENTELEMETRY_EXPORTER_OTLP_ENDPOINT: https://collector.example.com/v1/traces
  OPENTELEMETRY_TRACES_SAMPLE_RATE: 0.1
OPENTELEMETRY_EXPORTER_OTLP_HEADERS

Konfiguruje OPENTELEMETRY_EXPORTER_OTLP_HEADERS ako mapovanie názov:hodnota oddelené čiarkami.

OPENTELEMETRY_EXTRA_RESOURCE_ATTRIBUTES

Konfiguruje OPENTELEMETRY_EXTRA_RESOURCE_ATTRIBUTES ako mapovanie názov:hodnota oddelené čiarkami.

OPENTELEMETRY_SERVICE_NAME

Konfiguruje OPENTELEMETRY_SERVICE_NAME.

OPENTELEMETRY_TRACES_SAMPLE_RATE

Konfiguruje OPENTELEMETRY_TRACES_SAMPLE_RATE.

CDN pre lokalizáciu

WEBLATE_LOCALIZE_CDN_URL
WEBLATE_LOCALIZE_CDN_PATH

Added in version 4.2.1.

Konfigurácia pre doplnky CDN, vrátane CDN pre lokalizáciu JavaScriptu a Prekladové súbory CDN.

WEBLATE_LOCALIZE_CDN_PATH je cesta vnútri kontajnera. Mala by byť uložená na trvalom zväzku, nie v dočasnom úložisku.

Jednou z možností je uloženie do adresára dát Weblate:

environment:
  WEBLATE_LOCALIZE_CDN_URL: https://cdn.example.com/
  WEBLATE_LOCALIZE_CDN_PATH: /app/data/l10n-cdn

Poznámka

Za nastavenie servírovania súborov generovaných Weblate zodpovedáte vy, Weblate ich iba ukladá do nakonfigurovaného umiestnenia. Pozrite si CDN pre lokalizáciu pre usmernenia k bezpečnému servírovaniu.

Zmena povolených aplikácií, kontrol, formátov, doplnkov, strojového prekladu alebo automatických opráv

Vstavanú konfiguráciu povolených kontrol, formátov súborov, doplnkov, strojového prekladu alebo automatických opráv možno upraviť pomocou nasledujúcich premenných:

WEBLATE_ADD_APPS
WEBLATE_REMOVE_APPS
WEBLATE_ADD_CHECK
WEBLATE_REMOVE_CHECK
WEBLATE_ADD_AUTOFIX
WEBLATE_REMOVE_AUTOFIX
WEBLATE_ADD_FORMATS
WEBLATE_REMOVE_FORMATS
WEBLATE_ADD_ADDONS
WEBLATE_REMOVE_ADDONS
WEBLATE_ADD_MACHINERY

Added in version 5.6.1.

WEBLATE_REMOVE_MACHINERY

Added in version 5.6.1.

Príklad:

environment:
  WEBLATE_REMOVE_AUTOFIX: weblate.trans.autofixes.whitespace.SameBookendingWhitespace
  WEBLATE_REMOVE_FORMATS: weblate.formats.ttkit.PoFormat
  WEBLATE_ADD_ADDONS: customize.addons.MyAddon,customize.addons.OtherAddon

Nastavenia kontajnera

WEBLATE_WORKERS

Added in version 4.6.1.

Základný počet pracovníckych procesov bežiacich v kontajneri. Ak nie je nastavený, určuje sa automaticky pri štarte kontajnera na základe počtu dostupných jadier CPU.

Používa sa na určenie CELERY_MAIN_OPTIONS, CELERY_COMBINED_OPTIONS, CELERY_NOTIFY_OPTIONS, CELERY_MEMORY_OPTIONS, CELERY_TRANSLATE_OPTIONS, CELERY_BACKUP_OPTIONS, WEB_WORKERS a WEB_BLOCKING_THREADS. Tieto nastavenia môžete použiť na jemné doladenie.

CELERY_WORKER_MODE

Added in version 2026.9.1.

Určuje, ako sa pracovníci Celery spúšťajú v kontajneri. Podporované režimy sú:

combined

Spustí jedného prefork pracovníka pre všetky fronty. Toto je predvolené a znižuje spotrebu pamäte zdieľaním pamäte pri štarte aplikácie. Jeho súbežnosť je predvolene trojnásobok WEBLATE_WORKERS a násobiteľ prednačítania je predvolene jedna.

split

Spustí samostatného prefork pracovníka pre každú frontu. Zodpovedá správaniu verzií kontajnera pred 2026.9.1 a umožňuje ladiť každú frontu nezávisle.

single

Spustí všetky fronty v jednom procese pomocou solo fondu. Minimalizuje spotrebu pamäte, ale citeľne znižuje priepustnosť úloh.

Explicitný výber WEBLATE_SERVICE má prednosť pred týmto nastavením v horizontálne škálovaných nasadeniach.

CELERY_COMBINED_OPTIONS

Added in version 2026.9.1.

Konfiguruje pracovníka používaného CELERY_WORKER_MODE=combined. Predvolene je jeho súbežnosť trojnásobok WEBLATE_WORKERS. Pracovník používa násobiteľ prednačítania jedna, pokiaľ tu nie je prepísaný.

environment:
  CELERY_COMBINED_OPTIONS: --concurrency 12 --prefetch-multiplier 1
CELERY_MAIN_OPTIONS
CELERY_NOTIFY_OPTIONS
CELERY_MEMORY_OPTIONS
CELERY_TRANSLATE_OPTIONS
CELERY_BACKUP_OPTIONS

Tieto premenné umožňujú upraviť možnosti pracovníka Celery v CELERY_WORKER_MODE=split. Môže byť užitočné upraviť súbežnosť (--concurrency 16), prednačítanie (--prefetch-multiplier 4) alebo použiť inú implementáciu fondu (--pool=gevent). Možnosti príkazového riadku majú prednosť pred zodpovedajúcimi nastaveniami Celery, čo umožňuje každej kategórii pracovníka použiť iný násobiteľ prednačítania. Keď je ktorákoľvek z týchto premenných nastavená v režime combined alebo single, kontajner zaznamená varovanie pri štarte, že sa ignoruje.

Predvolene je počet súbežných pracovníkov založený na WEBLATE_WORKERS.

Príklad:

environment:
  CELERY_MAIN_OPTIONS: --concurrency 16 --prefetch-multiplier 1
CELERY_BEAT_OPTIONS

Konfiguruje plánovač Celery beat vo všetkých režimoch pracovníkov.

CELERY_SINGLE_OPTIONS

Konfiguruje pracovníka používaného CELERY_WORKER_MODE=single.

CELERY_SINGLE_PROCESS

Added in version 5.7.1.

Zastarané od verzie 2026.9.1.

Kompatibilný alias pre CELERY_WORKER_MODE=single. Keď je nastavený na 1 bez CELERY_WORKER_MODE, kontajner sa spustí v režime single a zaznamená varovanie žiadajúce aktualizáciu nastavenia. Ak sú nastavené obe premenné, CELERY_WORKER_MODE má prednosť.

WEBLATE_ASGI

Added in version 2026.8.

Nastavte na 1 na spustenie webovej aplikácie pomocou ASGI namiesto WSGI. Ide o voliteľné nastavenie určené na testovanie prechodu na ASGI. WSGI zostáva zatiaľ predvoleným štandardom, ale budúce vydanie bude používať iba ASGI a toto nastavenie odstráni.

environment:
  WEBLATE_ASGI: 1
WEB_WORKERS

Nakonfigurujte, koľko pracovníkov webovej aplikácie sa má spustiť.

Predvolené je polovica z WEBLATE_WORKERS, ale vždy aspoň 2.

Príklad:

environment:
  WEB_WORKERS: 4

Zmenené vo verzii 5.13: WEB_WORKERS konfiguruje, koľko pracovných procesov bude používať granian.

WEB_BLOCKING_THREADS

Nakonfigurujte, koľko blokujúcich vlákien WSGI môže každý pracovník granian použiť. Predvolená hodnota je dvojnásobok WEBLATE_WORKERS a ignoruje sa, keď je povolené WEBLATE_ASGI.

Maximálny počet súčasne spracovávaných požiadaviek WSGI je približne WEB_WORKERS vynásobený WEB_BLOCKING_THREADS. Každé vlákno môže držať vlastné databázové pripojenie, takže výsledný súčet udržte v rámci limitu databázových pripojení.

Príklad:

environment:
  WEB_WORKERS: 2
  WEB_BLOCKING_THREADS: 8
WEBLATE_SERVICE

Definuje, ktoré služby by mali byť spustené vnútri kontajnera. Použite toto pre Horizontálne škálovanie.

Sú definované nasledujúce služby:

celery-beat

Plánovač úloh Celery, mala by bežať iba jedna inštancia. Tento kontajner je tiež zodpovedný za migrácie štruktúry databázy a mal by byť spustený pred ostatnými.

celery-backup

Pracovník Celery pre zálohy, mala by bežať iba jedna inštancia.

celery-combined

Kombinovaný pracovník Celery pre všetky fronty úloh.

celery-celery

Všeobecný pracovník Celery.

celery-memory

Pracovník Celery pre prekladovú pamäť.

celery-notify

Pracovník Celery pre notifikácie.

celery-single

Pracovník Celery s jedným procesom pre všetky fronty úloh.

celery-translate

Pracovník Celery pre automatický preklad.

web

Webový server.

WEBLATE_ANUBIS_URL

Added in version 5.11.4.

URL servera Anubis na spracovanie autentifikácie podpožiadaviek. Toto môže byť užitočné na filtrovanie prichádzajúcich HTTP požiadaviek pomocou proof-of-work na zastavenie AI crawlerov. Musíte nakonfigurovať Anubis for Subrequest Authentication, aby to fungovalo.

Použite URL http:// alebo https:// s platným názvom hostiteľa alebo IPv4 adresou. URL môže zahŕňať port a jednoduchú cestu oddelenú lomkami používajúcu ASCII písmená, číslice, _ a -. Poverenia, dotazy, fragmenty a IPv6 adresy sa nepodporujú.

Zväzky Docker kontajnera

Kontajner Weblate exportuje dva zväzky (data a cache).

Poznámka

Ostatné servisné kontajnery (ako PostgreSQL alebo Valkey) majú tiež svoje datové zväzky a sú potrebné na udržanie perzistencie Weblate.

Kontajner PostgreSQL ukladá databázu do zväzku /var/lib/postgresql a Valkey do zväzku /data. Kontajner Valkey predvolene neukladá dáta a potrebuje dodatočnú konfiguráciu na povolenie perzistencie.

Založte svoju konfiguráciu na príkladoch poskytovaných Weblate alebo sa poraďte s ich dokumentáciou pre viac informácií.

Zväzok data je pripojený ako /app/data a používa sa na uchovávanie perzistentných dát Weblate, ako sú klonované repozitáre, alebo na prispôsobenie inštalácie Weblate. DATA_DIR podrobnejšie popisuje, čo je tu uložené.

Zväzok data je tiež miestom na uloženie prispôsobení Weblate, ako sú Prepísanie nastavení zo zväzku dát, Nahrádzanie loga a iných statických súborov alebo Prispôsobovanie kódu.

Umiestnenie Docker zväzku na hostiteľskom systéme závisí od vašej Docker konfigurácie, ale zvyčajne je uložený v /var/lib/docker/volumes/weblate-docker_weblate-data/_data/ (cesta pozostáva z názvu vášho docker-compose adresára, kontajnera a názvov zväzkov).

Zväzok cache je pripojený ako /app/cache a používa sa na ukladanie statických súborov a CACHE_DIR. Jeho obsah sa vytvára znovu pri spustení kontajnera a zväzok môže byť pripojený pomocou dočasného súborového systému, ako je tmpfs, ale pripojenie musí umožňovať vykonávanie, pretože Weblate tam ukladá generované pomocné súbory.

Pri explicitnom pripájaní /app/cache ako tmpfs v Docker Compose povoľte vykonávanie:

tmpfs:
  - /app/cache:exec

Pri nastavovaní možností vlastníctva zachovajte možnosť exec:

tmpfs:
  - /app/cache:exec,uid=1000,gid=1000

Pri manuálnom vytváraní zväzkov by vlastníkom adresárov mal byť UID 1000, pretože to je používateľ používaný vnútri kontajnera.

Kontajner Weblate môže byť spustený aj s koreňovým súborovým systémom iba na čítanie. V takom prípade by mali byť pripojené dva dodatočné tmpfs zväzky: /tmp a /run.

Koreňový súborový systém iba na čítanie

Added in version 4.18.

Pri spúšťaní kontajnera s koreňovým súborovým systémom iba na čítanie sú potrebné dva dodatočné tmpfs zväzky - /tmp a /run.

Konfigurácia nad rámec premenných prostredia

Premenné prostredia Docker sú určené na sprístupnenie väčšiny konfiguračných nastavení relevantných pre inštalácie Weblate.

Ak nájdete nastavenie, ktoré nie je vystavené ako premenná prostredia, a veríte, že by malo byť, neváhajte požiadať o jeho vystavenie v budúcej verzii Weblate.

Ak potrebujete upraviť nastavenie, ktoré nie je vystavené ako premenná prostredia Docker, môžete tak urobiť buď zo zväzku dát alebo rozšírením Docker obrazu.

Prepísanie nastavení zo zväzku dát

Môžete vytvoriť súbor na /app/data/settings-override.py, t.j. v koreni zväzku dát, na rozšírenie alebo prepísanie nastavení definovaných cez premenné prostredia.

Prepísanie nastavení rozšírením Docker obrazu

Na prepísanie nastavení na úrovni Docker obrazu namiesto zo zväzku dát:

  1. Vytvorte vlastný Python balík.

  2. Pridajte modul do vášho balíka, ktorý importuje všetky nastavenia z weblate.settings_docker.

    Napríklad, v rámci štruktúry balíka definovanej v Vytvorenie modulu Python, môžete vytvoriť súbor na weblate_customization/weblate_customization/settings.py s nasledujúcim počiatočným kódom:

    from weblate.settings_docker import *
    
  3. Vytvorte vlastný Dockerfile, ktorý dedí z oficiálneho Docker obrazu Weblate, a potom nainštaluje váš balík a nasmeruje premennú prostredia DJANGO_SETTINGS_MODULE na váš modul nastavení:

    FROM weblate/weblate
    
    USER root
    
    COPY weblate_customization /usr/src/weblate_customization
    RUN source /app/venv/bin/activate && uv pip install --no-cache-dir /usr/src/weblate_customization
    ENV DJANGO_SETTINGS_MODULE=weblate_customization.settings
    
    USER 1000
    
  4. Namiesto použitia oficiálneho Docker obrazu Weblate zostavte vlastný obraz z tohto súboru Dockerfile.

    Neexistuje čistý spôsob, ako to urobiť s docker-compose.override.yml. Mohli by ste pridať build: . do uzla weblate v tomto súbore, ale potom bude váš vlastný obraz označený ako weblate/weblate vo vašom systéme, čo môže byť problematické.

    Takže, namiesto použitia docker-compose.yml priamo z oficiálneho repozitára, bez úprav, a jeho rozšírenia cez docker-compose.override.yml, môžete chcieť vytvoriť kópiu oficiálneho súboru docker-compose.yml a upraviť vašu kópiu tak, aby nahradila image: weblate/weblate za build: ..

    Pozrite Referenciu zostavovania Compose súborov pre podrobnosti o zostavovaní obrazov zo zdroja pri použití docker-compose.

  5. Rozšírte váš vlastný modul nastavení na definovanie alebo redefinovanie nastavení.

    Môžete definovať nastavenia pred alebo po príkaze importu vyššie, aby ste určili, ktoré nastavenia majú prednosť. Nastavenia definované pred príkazom importu môžu byť prepísané premennými prostredia a prepismi nastavení definovanými v zväzku dát. Nastavenia definované po príkaze importu nemôžu byť prepísané.

    Môžete ísť aj ďalej. Napríklad, môžete reprodukovať niektoré veci, ktoré weblate.docker_settings robí, ako je vystavovanie nastavení ako premenných prostredia, alebo umožnenie prepisovania nastavení z Python súborov v zväzku dát.

Nahrádzanie loga a iných statických súborov

Statické súbory dodávané s Weblate môžu byť prepísané umiestnením do /app/data/python/customize/static (pozrite Zväzky Docker kontajnera). Napríklad vytvorenie /app/data/python/customize/static/favicon.ico nahradí favicon.

Rada

Súbory sa skopírujú na zodpovedajúce miesto pri štarte kontajnera, takže po zmene obsahu zväzku je potrebný reštart Weblate.

Tento prístup možno použiť aj na prepísanie šablón Weblate. Napríklad vlastné Právny modul dokumenty a štýly môžu byť poskytnuté tak, ako je popísané v Prispôsobenie právnych dokumentov a štýlov.

Alternatívne môžete tiež zahrnúť vlastný modul (pozrite Prispôsobenie Weblate) a pridať ho ako samostatný zväzok do Docker kontajnera, napríklad:

weblate:
  volumes:
    - weblate-data:/app/data
    - ./weblate_customization/weblate_customization:/app/data/python/weblate_customization
  environment:
    WEBLATE_ADD_APPS: weblate_customization

Prispôsobovanie kódu

Poznámka

Interné API Weblate sa môže medzi verziami významne líšiť a nie je určené ako stabilné. Prosím, skontrolujte váš vlastný kód interagujúci s internými časťami Weblate pri každej aktualizácii.

Môžete umiestniť dodatočný Python kód do /app/data/python/customize (pozrite Zväzky Docker kontajnera). Je už nainštalovaný ako Django aplikácia vnútri Weblate (toto sa používa na prispôsobovanie šablón a statických súborov, ako je popísané vyššie).

Toto môže byť použité na umiestnenie akéhokoľvek kódu (napríklad Písanie vlastných kontrol) alebo na pridanie vlastných úloh údržby do plánovača úloh Celery.

An example of custom scheduled tasks in /app/data/python/customize/tasks.py.
"""Custom scheduled task."""

from __future__ import annotations

# ruff: ignore[suspicious-subprocess-import]
import subprocess
from typing import TYPE_CHECKING

from celery.schedules import crontab

from weblate.utils.celery import app

if TYPE_CHECKING:
    from celery import Celery


@app.task
def custom_task() -> None:
    """Execute custom task code."""
    # ruff: ignore[start-process-with-partial-path]
    subprocess.run(["sleep", "1"], check=True)


@app.on_after_finalize.connect
def setup_periodic_tasks(sender: Celery, **kwargs: object) -> None:
    """Configure when periodic task is triggered."""
    sender.add_periodic_task(
        crontab(hour=1, minute=0), custom_task.s(), name="custom-task"
    )

Integrácia kontajnerov tretích strán

Nastavenie Docker Weblate môže byť rozšírené o dodatočné kontajnery na poskytovanie doplnkových služieb, ako je strojový preklad, kontrola pravopisu, alebo iné nástroje, ktoré zlepšujú pracovný postup prekladu. Tieto služby môžu byť integrované do vašej konfigurácie Docker Compose a pracovať spolu s Weblate.

Pri pridávaní kontajnerov tretích strán zvážte nasledujúce:

  • Sieťová konektivita: Uistite sa, že kontajnery môžu medzi sebou komunikovať umiestnením do tej istej Docker siete

  • Perzistencia dát: Použite zväzky pre služby, ktoré potrebujú uchovávať dáta

  • Bezpečnosť: Nakonfigurujte vhodné riadenie prístupu a vyhnite sa vystavovaniu nepotrebných portov

Integrácia Docker kontajnera LibreTranslate

LibreTranslate je bezplatná a open-source služba strojového prekladu, ktorú je možné hosťovať lokálne. Jej integrácia s Weblate poskytuje možnosti offline strojového prekladu bez závislosti na externých službách.

Službu LibreTranslate môžete začleniť do vášho nasadenia Weblate jej zaradením do súboru docker-compose.override.yml. Keďže beží v rámci Docker siete, je prístupná iba pre Weblate a nie je vystavená verejnému internetu.

Základné nastavenie pomocou docker-compose.override.yml:

services:
  libretranslate:
    image: libretranslate/libretranslate:latest
    command: --disable-web-ui
    restart: unless-stopped
    environment:
      LT_UPDATE_MODELS: true
    volumes:
      - libretranslate_models:/home/libretranslate/.local:rw
    healthcheck:
      test: ['CMD-SHELL', './venv/bin/python scripts/healthcheck.py']
      interval: 10s
      timeout: 4s
      retries: 4
      start_period: 5s

volumes:
  libretranslate_models:

Pre preklad akcelerovaný GPU (ak máte dostupné NVIDIA GPU):

services:
  libretranslate:
    image: libretranslate/libretranslate:latest-cuda
    command: --disable-web-ui
    restart: unless-stopped
    environment:
      LT_UPDATE_MODELS: true
      PUID: root
    volumes:
      - libretranslate_models:/home/libretranslate/.local:rw
    healthcheck:
      test: ['CMD-SHELL', './venv/bin/python scripts/healthcheck.py']
      interval: 10s
      timeout: 4s
      retries: 4
      start_period: 5s
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: 1
              capabilities: [gpu]

volumes:
  libretranslate_models:

Po spustení služieb pomocou docker compose down && docker compose up -d, nakonfigurujte LibreTranslate vo Weblate:

  1. Prístup do administrátorského rozhrania Weblate

  2. Prejdite na Strojový preklad → Automatické návrhy

  3. Pridajte novú službu LibreTranslate s:

    Služba:

    LibreTranslate

    URL API:

    http://libretranslate:5000

    API kľúč:

    Nechať prázdne

LibreTranslate je teraz nakonfigurovaný a dostupný pre strojový preklad vo Weblate.

Poznámka

  • Služba LibreTranslate beží bez webového rozhrania (--disable-web-ui) a je prístupná iba cez API v rámci Docker siete.

  • Modely sa automaticky aktualizujú pri štarte kontajnera. (LT_UPDATE_MODELS: true)

  • Dáta sú uchovávané pomocou Docker zväzkov pre optimálny výkon a bezpečnosť dát.

  • Kontroly zdravia zabezpečujú, že Docker engine správne sleduje stav služby.

  • Pre akceleráciu GPU použite variant obrazu CUDA a uistite sa, že váš systém má podporu NVIDIA Docker. Tento kontajner beží ako privilegovaný používateľ, aby mohol používať GPU.

  • Nie sú vystavené žiadne externé porty, čo robí nastavenie predvolene bezpečným.

Integrácia Docker kontajnera Anubis

Anubis je utilita webového AI firewallu na blokovanie AI scraperov a iného rušivého prevádzky na serveri. Zvyčajne je potrebný pre verejne otvorené inštalácie Weblate, aby sa zabránilo nadmernému zaťaženiu spôsobenému scrapingom.

Anubis môže byť nasadený pomocou Docker Compose:

anubis:
   image: ghcr.io/techarohq/anubis:latest
   environment:
      BIND: ":8923"
      DIFFICULTY: "4"
      METRICS_BIND: ":9090"
      SERVE_ROBOTS_TXT: "false"
      OG_PASSTHROUGH: "false"
      # The single space in TARGET enables subrequest authentication
      TARGET: " "
      # The redirect domain has to match WEBLATE_SITE_DOMAIN
      REDIRECT_DOMAINS: weblate.example.com
      # Generate a random private key using: openssl rand -hex 32
      ED25519_PRIVATE_KEY_HEX: "..."
      # Customize your Anubis policy
      POLICY_FNAME: /data/botPolicies.yaml
   healthcheck:
      test: ["CMD", "anubis", "--healthcheck"]
      interval: 5s
      timeout: 30s
      retries: 5
      start_period: 500ms
   volumes:
      - anubis-data:/data

volumes:
   anubis-data:

Poznámka

Očakáva sa, že zväzok anubis-data vo vyššie uvedenej konfigurácii bude obsahovať botPolicies.yaml s politikou bota nakonfigurovanou podľa vašich potrieb.

Minimálne musíte upraviť stavové kódy, ako je popísané na https://anubis.techaro.lol/docs/admin/configuration/subrequest-auth.

Tiež sa odporúča nakonfigurovať backend perzistentného úložiska, ako je popísané na https://anubis.techaro.lol/docs/admin/policies/#storage-backends.

Potom môžete zapnúť používanie Anubis vo Weblate pomocou:

environment:
   WEBLATE_ANUBIS_URL: http://anubis:8923

Konfigurácia servera PostgreSQL

Kontajner PostgreSQL používa predvolenú konfiguráciu PostgreSQL a nebude efektívne využívať vaše jadrá CPU alebo pamäť. Odporúča sa prispôsobiť konfiguráciu na zlepšenie výkonu.

Konfigurácia môže byť upravená, ako je popísané v Konfigurácia databázy na https://hub.docker.com/_/postgres. Konfigurácia zodpovedajúca vášmu prostrediu môže byť vygenerovaná pomocou https://pgtune.leopard.in.ua/.

Interné časti kontajnera

Kontajner používa supervisor na spúšťanie jednotlivých služieb. V prípade Horizontálne škálovanie spúšťa v kontajneri iba jednu službu.

Na kontrolu stavu služieb použite:

docker compose exec --user weblate weblate supervisorctl status

Služby Celery závisia od CELERY_WORKER_MODE. Predvolený režim combined spúšťa celery-combined, zatiaľ čo režim single spúšťa celery-single. Všetko spracovanie úloh môžete zastaviť v predvolenom režime pomocou:

docker compose exec --user weblate weblate supervisorctl stop celery-combined

Režim split spúšťa samostatnú službu pre každú frontu Celery (podrobnosti pozrite v Úlohy na pozadí pomocou Celery). V tomto režime môžete zastaviť spracovanie niektorých úloh zastavením príslušného pracovníka:

docker compose exec --user weblate weblate supervisorctl stop celery-translate