Telepítés Docker használatával

Dockeres Weblate telepítéssel néhány másodperc alatt elindíthatja saját Weblate példányát. A Weblate összes függősége előre telepítve van. Alapértelmezett adatbázisként a PostgreSQL van beállítva, a gyorsítótárazáshoz pedig a Redis szolgál háttérrendszerként.

Hardverkövetelmények

A Weblate bármilyen korszerű hardveren problémamentesen működik, az alábbi minimális konfiguráció szükséges a Weblate (adatbázis és webszerverrel együtt) egyetlen gépen történő futtatásához:

  • 3 GB RAM

  • 2 CPU mag

  • 1 GB tárhely

Megjegyzés

A Weblate telepítésének tényleges követelményei nagymértékben függnek a kezelt fordítások méretétől.

Memóriahasználat

Minél több memória áll rendelkezésre, annál jobb – a memória minden szinten gyorsítótárazásra szolgál (fájlrendszer, adatbázis és Weblate). Több száz fordítási összetevő esetén legalább 4 GB RAM ajánlott.

Tipp

Ha kevesebb memória áll rendelkezésre, mint az ajánlott, a Egyszálú Celery beállítás használata javasolt.

CPU-használat

Sok egyidejű felhasználó esetén nő a szükséges CPU magok száma.

Tárhelyhasználat

Az adatbázis tipikus tárhelyigénye körülbelül 300 MB 1 millió tárolt szóra vetítve.

A klónozott tárolók tárhelyigénye változó, de a Weblate igyekszik a méretüket minimálisra csökkenteni sekély (shallow ) klónozások alkalmazásával.

Csomópontok

Kis és közepes méretű webhelyek esetén (milliós nagyságrendű tárolt szavak) az összes Weblate összetevő (lásd: Rendszer-architektúra áttekintése) egyetlen csomóponton is futtatható.

Amikor a tárolt szavak száma százmilliók fölé nő, ajánlott külön csomópontot biztosítani az adatbázis számára (lásd: Adatbázis beállítása Weblate-hez).

Telepítés

Tipp

A következő példák feltételezik, hogy működő Docker környezettel rendelkezik, és telepítve van a docker-compose-plugin. A részletes telepítési útmutatóért tekintse meg a Docker dokumentációját.

Ez a beállítás egy Weblate kiszolgálót hoz létre HTTP-n keresztül, ezért érdemes egy HTTPS-forgalmat lezáró (termináló) proxy mögé helyezni. Telepíthető közvetlenül HTTPS-proxyval is, erről bővebben lásd: Automatikus SSL tanúsítványok a Let’s Encrypt használatával. Nagyobb rendszerekhez tekintse meg a Vízszintes skálázás részt.

  1. Klónozza a weblate-docker tárolót:

    git clone https://github.com/WeblateOrg/docker-compose.git weblate-docker
    cd weblate-docker
    
  2. Hozza létre a saját beállításaival a docker-compose.override.yml fájlt. A környezeti változók teljes listáját lásd: Docker környezeti változók.

    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
    

    Megjegyzés

    Amennyiben a WEBLATE_ADMIN_PASSWORD nincs beállítva, az adminisztrátor felhasználó véletlenszerű jelszóval jön létre, amely az első indításkor jelenik meg.

    A mellékelt példa alapján a Weblate a 80-as porton hallgatózik. Ha módosítani szeretné a port-hozzárendelést, szerkessze a docker-compose.override.yml fájlt.

  3. Indítsa el a Weblate-konténereket:

    docker compose up
    

Élvezze a saját Weblate telepítését, amely a weblate konténer 80-as portján érhető el.

Docker-képtároló kiválasztása

A Weblate-konténerek az alábbi tárolókba kerülnek feltöltésre:

Megjegyzés

Minden példában a Docker Hub-ról történik a képek letöltése, ha másik tárolót szeretne használni, módosítsa ennek megfelelően a konfigurációt.

Docker-kép címkéjének kiválasztása

Válasszon olyan címkét, amely megfelel a környezetének és elvárásainak:

Címke neve

Leírás

Használati eset

latest

Weblate stabil kiadás, amely megfelel a legutóbbi címkézett kiadásnak

Folyamatos frissítések egy éles környezetben

<MAJOR>

Weblate stabil kiadás

Folyamatos frissítések egy főverzión belül éles környezetben

<MAJOR>.<MINOR>

Weblate stabil kiadás

Folyamatos frissítések egy alverzión belül éles környezetben

<VERSION>.<PATCH>

Weblate stabil kiadás

Jól definiált telepítés éles környezetben

edge

Weblate stabil kiadás, amely fejlesztési változtatásokat is tartalmaz a Docker-konténerben (például frissített függőségek)

Folyamatos frissítések tesztkörnyezetben

edge-<DATE>-<SHA>

Weblate stabil kiadás, amely fejlesztési változtatásokat is tartalmaz a Docker-konténerben (például frissített függőségek)

Jól definiált telepítés tesztkörnyezetben

bleeding

Fejlesztői változat a Weblate Git tárolójából

Folyamatos frissítések a közelgő Weblate funkciók teszteléséhez

bleeding-<DATE>-<SHA>

Fejlesztői változat a Weblate Git tárolójából

Jól definiált telepítés a közelgő Weblate funkciók tesztelésére

Minden képet CI rendszerrel tesztelünk, mielőtt publikálnánk, így még a bleeding változat használata is viszonylag biztonságos.

A közzétett címkék teljes listája elérhető a GitHub Packages oldalon

Docker-konténer HTTPS támogatással

Az általános telepítési útmutatóért lásd: Telepítés. Ez a szakasz csak a különbségeket ismerteti.

SSL-t lezáró proxy

Az SSL kapcsolatot a Weblate-konténeren kívül is le lehet zárni. Ehhez több HTTP-fejlécet is továbbítani kell a konténer felé, hogy az tisztában legyen a tényleges környezetével. Ezeket a fejléceket részletesen a Fordított (reverse) proxy mögötti futtatás rész írja le.

Példa nginx proxykonfigurációra Docker-konténer esetén.
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-konténer környezet külső SSL-lezáráshoz.
WEBLATE_ENABLE_HTTPS=1
WEBLATE_IP_PROXY_HEADER=HTTP_X_FORWARDED_FOR

Saját SSL tanúsítványok használata

Ha saját SSL tanúsítványt szeretne használni, egyszerűen helyezze el a fájlokat a Weblate adatkötetére (lásd: Docker-konténer kötetek):

  • ssl/fullchain.pem fájl tartalmazza a tanúsítványt és a szükséges CA (hitelesítésszolgáltatói) tanúsítványokat

  • ssl/privkey.pem fájl pedig a privát kulcsot tartalmazza

Mindkét fájlnak ugyanahhoz a felhasználóhoz kell tartoznia, aki a Docker-konténert indítja, és a fájlmaszknak 600 értékűnek kell lennie (csak a tulajdonos számára olvasható és írható).

Ezen felül a Weblate-konténer mostantól SSL-kapcsolatokat is fogad a 4443-as porton, ezért érdemes az HTTPS porttovábbítást is belefoglalni a Docker Compose felülírásba (override):

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

Ha ugyanazon a kiszolgálón más webhelyeket is üzemeltet, valószínű, hogy a 80 és 443 portokat már egy fordított proxy (például NGINX) használja. Ahhoz, hogy az NGINX-en keresztül átadja a HTTPS kapcsolatot a Docker-konténernek, a következő konfigurációt alkalmazhatja:

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>;
    }
}

Cserélje ki a <SITE_URL>, <SITE> és <EXPOSED_DOCKER_PORT> értékeket a saját környezetének megfelelő adatokra.

Automatikus SSL tanúsítványok a Let’s Encrypt használatával

Ha nyilvános telepítés esetén automatikusan generált SSL tanúsítványokat szeretne használni a Let’s Encrypt szolgáltatással, akkor egy fordított HTTPS proxyval egészítse ki a rendszert egy további Docker-konténer segítségével. Ehhez az https-portal konténer használható. Ezt a docker-compose-https.yml fájl tartalmazza. Ezután hozza létre a saját beállításaival a docker-compose-https.override.yml fájlt:

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'

Valahányszor használja a docker compose parancsot, mindkét fájlt meg kell adni hozzá, majd hajtsa végre az alábbiakat:

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

Docker-konténer frissítése

Általában célszerű csak a Weblate-konténert frissíteni és a PostgreSQL-konténert az aktuális verzión tartani, mivel a PostgreSQL frissítése elég körülményes, és legtöbbször nem jár jelentős előnnyel.

A 4.17-1 verzióban változott: A Weblate 4.17-1 verziójától kezdődően a Docker-konténer a Django 4.2-t használja, amely PostgreSQL 12-es vagy újabb verziót igényel. Kérjük, a Weblate frissítése előtt frissítse a PostgreSQL-t. Lásd: PostgreSQL-konténer frissítése.

Ezt úgy is megteheti, hogy a meglévő docker-compose fájlt használja, lehúzza a legfrissebb képeket, majd újraindítja a konténereket:

# 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

A Weblate adatbázis első indításkor automatikusan migrálásra kerül, nincs szükség további manuális beavatkozásra.

Megjegyzés

A főverziók közötti frissítéseket a Weblate nem támogatja. Például, ha a 3.x sorozatot használja, és 4.x-re szeretne frissíteni, először frissítsen a legutóbbi 4.0.x-y verzióra (jelenleg ez a 4.0.4-5), amely végrehajtja a migrációt, és ezután folytassa a frissítést újabb verziókra.

Érdemes lehet frissíteni a docker-compose tárolót is, bár ez a legtöbb esetben nem szükséges. A PostgreSQL kiszolgáló frissítéséhez lásd: PostgreSQL-konténer frissítése.

PostgreSQL-konténer frissítése

A PostgreSQL-konténerek nem támogatják a verziók közötti automatikus frissítést, a frissítést manuálisan kell elvégezni. Az alábbi lépések egy lehetséges módszert mutatnak be.

  1. Állítsa le a Weblate-konténert:

    docker compose stop weblate cache
    
  2. Készítsen biztonsági mentést az adatbázisról:

    docker compose exec database pg_dumpall --clean --if-exists --username weblate > backup.sql
    
  3. Állítsa le az adatbázis konténert:

    docker compose stop database
    
  4. Távolítsa el a PostgreSQL kötetet:

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

    Tipp

    A kötet neve a Docker Compose projekt nevéből képződik, amely alapértelmezés szerint a könyvtár neve – ebben a dokumentációban ez weblate-docker.

  5. Módosítsa a docker-compose.yml fájlt az új PostgreSQL verzió használatára.

  6. Indítsa el az adatbázis-konténert:

    docker compose up -d database
    
  7. Állítsa vissza az adatbázist a biztonsági mentésből:

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

    Tipp

    Ellenőrizze, hogy az adatbázis neve megegyezik-e a POSTGRES_DB értékével.

  8. (Opcionális) Frissítse a Weblate felhasználó jelszavát. Ez szükséges lehet a PostgreSQL 14-es vagy 15-ös verziójára történő migráció során, mivel megváltozott a jelszavak tárolásának módja:

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

    Tipp

    Ellenőrizze, hogy az adatbázis neve megegyezik-e a POSTGRES_DB értékével.

  9. Indítsa el az összes fennmaradó konténert:

    docker compose up -d
    

Adminisztrátori bejelentkezés

A konténerek beállítása után jelentkezzen be admin felhasználóként a WEBLATE_ADMIN_PASSWORD változóban megadott jelszóval vagy ha az nem volt beállítva, az első indításkor generált véletlenszerű jelszóval.

Az admin jelszó visszaállításához indítsa újra a konténert úgy, hogy a WEBLATE_ADMIN_PASSWORD változóban megadja az új jelszót.

Folyamatok száma és memóriahasználat

A WSGI és Celery munkafolyamatok számát automatikusan a CPU-k száma alapján határozza meg a rendszer. Ez jól működik a legtöbb felhőalapú virtuális gépen, mivel ezek általában kevés CPU-val, de nagy mennyiségű memóriával rendelkeznek.

Ha sok CPU mag áll rendelkezésére, de memóriahiányt tapasztal, próbálja meg csökkenteni a munkafolyamatok számát:

environment:
  WEBLATE_WORKERS: 2

Az egyes munkafolyamat-kategóriák számát is finomhangolhatja:

environment:
  WEB_WORKERS: 4
  CELERY_MAIN_OPTIONS: --concurrency 2
  CELERY_NOTIFY_OPTIONS: --concurrency 1
  CELERY_TRANSLATE_OPTIONS: --concurrency 1

A memóriahasználat tovább csökkenthető, ha csak egyetlen Celery folyamatot futtat:

environment:
  CELERY_SINGLE_PROCESS: 1

Vízszintes skálázás

Added in version 4.6.

A szolgáltatás vízszintes skálázása érdekében több Weblate-konténert is futtathat. A /app/data kötetet közösen kell használniuk a konténereknek – ehhez ajánlott klaszterezett fájlrendszert, például GlusterFS-t alkalmazni. A /app/cache kötet viszont konténerenként külön példányban szükséges.

Minden Weblate-konténer szerepe a WEBLATE_SERVICE környezeti változóval van meghatározva. Kövesse figyelmesen a dokumentációt, mivel bizonyos szolgáltatásokat csak egyszer szabad futtatni a klaszterben, és a szolgáltatások indítási sorrendje is fontos.

Példabeállítást talál a docker-compose tárolóban: docker-compose-split.yml.

Docker környezeti változók

A Weblate számos beállítása megadható Docker-konténeren belül, az alábbiakban ismertetett környezeti változók segítségével.

Ha olyan beállítást kell megadnia, amely nem érhető el Docker környezeti változón keresztül, lásd: Konfiguráció a környezeti változókon túl.

Titkos adatok átadása (passing secrets)

Added in version 5.0.

A Weblate-konténer támogatja a titkos adatok fájlon keresztüli átadását. Ehhez adja hozzá a környezeti változó nevéhez a _FILE utótagot, és adja át a titkos fájlt a Docker-konténernek.

A kapcsolódó docker-compose.yml például így nézhet ki:

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

Általános beállítások

WEBLATE_DEBUG

A Django hibakeresési módját a DEBUG beállításával konfigurálja.

Példa:

environment:
  WEBLATE_DEBUG: 1
WEBLATE_LOGLEVEL

A naplózás részletességi szintjét szabályozza. Állítsa DEBUG értékre a részletesebb naplók megtekintéséhez.

Alapértelmezés szerint INFO szintre van állítva, amikor a WEBLATE_DEBUG ki van kapcsolva, és DEBUG szintre, amikor a hibakeresési mód be van kapcsolva.

Ha csendesebb naplózást szeretne, használja az ERROR vagy WARNING szinteket.

WEBLATE_LOGLEVEL_DATABASE

Az adatbázis-lekérdezések naplózásának részletességét szabályozza.

WEBLATE_LOG_GELF_HOST

Added in version 5.9.

Távoli naplózást konfigurál GELF TCP kapcsolaton keresztül. Használható például Graylog integrációhoz.

WEBLATE_LOG_GELF_PORT

Added in version 5.9.

Egyedi portot is beállíthat a WEBLATE_LOG_GELF_HOST számára, alapértelmezésben a 12201 portot használja.

WEBLATE_SITE_TITLE

Megváltoztatja a webhely-címet, amely az összes oldal fejlécében jelenik meg.

WEBLATE_SITE_DOMAIN

A webhely domainjét állítja be. Ez a paraméter kötelező.

Nem szabványos port használata esetén a portot is meg kell adni.

Példa:

environment:
  WEBLATE_SITE_DOMAIN: example.com:8080
WEBLATE_ADMIN_NAME
WEBLATE_ADMIN_EMAIL

A webhely adminisztrátorának nevét és e-mail címét állítja be. Ez az ADMINS beállításhoz, valamint az admin felhasználó létrehozásához is használatos (további részletekért lásd: WEBLATE_ADMIN_PASSWORD).

Példa:

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

Az admin felhasználó jelszavát állítja be.

  • Ha nincs beállítva, és az admin felhasználó nem létezik, a rendszer véletlenszerű jelszóval hozza létre az első konténerindításkor.

  • Ha nincs beállítva, de az admin felhasználó létezik, nem történik semmilyen módosítás.

  • Ha be van állítva, az admin felhasználó minden konténerindításkor frissítésre kerül, hogy megfeleljen a WEBLATE_ADMIN_PASSWORD, WEBLATE_ADMIN_NAME és WEBLATE_ADMIN_EMAIL értékeknek.

Figyelem

Biztonsági kockázatot jelenthet a jelszó tárolása a konfigurációs fájlban. Ezt a változót érdemes csak a kezdeti beállításhoz használni (vagy hagyni, hogy a Weblate automatikusan véletlenszerű jelszót generáljon az első indításkor), illetve jelszó-visszaállításhoz.

WEBLATE_ADMIN_NOTIFY_ERROR

Beállítja, hogy a szerverhibák esetén küldjön-e e-mailt az adminisztrátoroknak. Ez alapértelmezés szerint be van kapcsolva.

Előfordulhat, hogy inkább más hibagyűjtő rendszert, például a Sentryt vagy a Rollbart szeretné használni, ebben az esetben érdemes ezt a funkciót kikapcsolni.

WEBLATE_SERVER_EMAIL

Az e-mail cím, ahonnan a hibajelentések küldésre kerülnek.

WEBLATE_DEFAULT_FROM_EMAIL

A kimenő e-mailek küldő címét állítja be.

WEBLATE_ADMINS_CONTACT

Az ADMINS_CONTACT beállítását konfigurálja.

WEBLATE_CONTACT_FORM

A kapcsolatfelvételi űrlap viselkedését állítja be, lásd: CONTACT_FORM.

WEBLATE_ALLOWED_HOSTS

Az engedélyezett HTTP hosztneveket állítja be az ALLOWED_HOSTS segítségével.

Alapértelmezés szerint *, amely minden hosztnevet engedélyez.

Példa:

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

A regisztrációs lehetőség elérhetőségét szabályozza a REGISTRATION_OPEN állításával.

Példa:

environment:
  WEBLATE_REGISTRATION_OPEN: 0
WEBLATE_REGISTRATION_CAPTCHA

Added in version 5.10.

Beállítja, hogy a regisztrációhoz és egyéb hitelesítést nem igénylő műveletekhez használjon-e captcha-t, lásd: REGISTRATION_CAPTCHA.

Példa:

environment:
  WEBLATE_REGISTRATION_CAPTCHA: 0
WEBLATE_REGISTRATION_ALLOW_BACKENDS

Beállítja, hogy mely hitelesítési módszerek használhatók új fiók létrehozására a REGISTRATION_ALLOW_BACKENDS segítségével.

Példa:

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

Added in version 4.16.

A REGISTRATION_REBIND beállítását konfigurálja.

WEBLATE_TIME_ZONE

A Weblate által használt időzónát állítja be, lásd: TIME_ZONE.

Megjegyzés

Ha a Docker-konténer időzónáját szeretné megváltoztatni, használja a TZ környezeti változót.

Példa:

environment:
  WEBLATE_TIME_ZONE: Europe/Prague
WEBLATE_ENABLE_HTTPS

Beállítja, hogy a Weblate feltételezze, hogy egy fordított (reverse) HTTPS proxy mögött működik, így HTTPS-t használ az e-mailekben és az API linkekben, illetve biztonsági jelzőket állít be a sütiknél.

Tipp

Az esetleges problémák miatt tekintse meg az ENABLE_HTTPS dokumentációját.

Megjegyzés

Ez önmagában nem teszi lehetővé, hogy a Weblate-konténer közvetlenül HTTPS kapcsolaton keresztül fogadjon kéréseket, ehhez külön konfiguráció szükséges. Ezekre példákat itt talál: Docker-konténer HTTPS támogatással.

Példa:

environment:
  WEBLATE_ENABLE_HTTPS: 1
WEBLATE_INTERLEDGER_PAYMENT_BUILTIN

Added in version 5.11.

Az INTERLEDGER_PAYMENT_BUILTIN beállítását konfigurálja.

WEBLATE_INTERLEDGER_PAYMENT_POINTERS

Added in version 4.12.1.

Lehetővé teszi, hogy a Weblate beállítsa a meta[name=monetization] mezőt a dokumentum fejléce részében. Ha több érték van megadva, véletlenszerűen választ egyet közülük.

WEBLATE_IP_PROXY_HEADER

Lehetővé teszi, hogy a Weblate egy megadott HTTP fejlécből olvassa ki az IP címet. Ezt akkor használja, ha a Weblate-konténer előtt fordított proxy működik.

Engedélyezi az IP_BEHIND_REVERSE_PROXY funkciót, és beállítja az IP_PROXY_HEADER értékét.

Megjegyzés

A megadott formátumnak meg kell felelnie a Django által elvárt szabályoknak. A Django a nyers HTTP-fejlécneveket az alábbiak szerint alakítja át:

  • az összes karaktert nagybetűssé alakítja

  • a kötőjeleket aláhúzásjelekké cseréli

  • HTTP_ előtagot ad a név elé

Így például az X-Forwarded-For fejlécből HTTP_X_FORWARDED_FOR lesz.

Példa:

environment:
  WEBLATE_IP_PROXY_HEADER: HTTP_X_FORWARDED_FOR
WEBLATE_IP_PROXY_OFFSET

Added in version 5.0.1.

Az IP_PROXY_OFFSET beállítását konfigurálja.

WEBLATE_USE_X_FORWARDED_PORT

Added in version 5.0.1.

Egy logikai érték, amely meghatározza, hogy az X-Forwarded-Port fejlécet használja-e a SERVER_PORT META változó helyett. Ezt csak akkor szabad engedélyezni, ha olyan proxy van használatban, amely beállítja ezt a fejlécet.

Megjegyzés

Ez egy logikai típusú beállítás ("true" vagy "false" értékkel).

WEBLATE_SECURE_PROXY_SSL_HEADER

Egy olyan tuple-t (fix hosszúságú, sorrendhez kötött adatszerkezetet) határoz meg, amely egy HTTP fejléc/érték kombinációt tartalmaz, és azt jelzi, hogy a kérés biztonságos. Erre akkor van szükség, ha a Weblate egy SSL forgalmat lezáró (termináló) proxy mögött fut, amely nem továbbítja a szabványos HTTPS fejléceket.

Példa:

environment:
  WEBLATE_SECURE_PROXY_SSL_HEADER: HTTP_X_FORWARDED_PROTO,https
WEBLATE_REQUIRE_LOGIN

A REQUIRE_LOGIN beállításának engedélyezésével kötelezővé teheti a bejelentkezést a teljes Weblate telepítésre.

Példa:

environment:
  WEBLATE_REQUIRE_LOGIN: 1
WEBLATE_LOGIN_REQUIRED_URLS_EXCEPTIONS
WEBLATE_ADD_LOGIN_REQUIRED_URLS_EXCEPTIONS
WEBLATE_REMOVE_LOGIN_REQUIRED_URLS_EXCEPTIONS

A LOGIN_REQUIRED_URLS_EXCEPTIONS segítségével URL-kivétel(ek) adható meg a teljes telepítésre kötelező bejelentkezés alól.

Lehetőség van a teljes beállítás cseréjére vagy az alapérték módosítására ADD és REMOVE változók segítségével.

A kapcsolatfelvételi űrlapra vonatkozó kötelező bejelentkezés beállításához tegye a következőt:

environment:
  WEBLATE_REMOVE_LOGIN_REQUIRED_URLS_EXCEPTIONS: /contact/$
WEBLATE_GOOGLE_ANALYTICS_ID

A Google Analytics azonosítót a GOOGLE_ANALYTICS_ID megváltoztatásával konfigurálja.

WEBLATE_DEFAULT_PULL_MESSAGE

Az alapértelmezett cím és üzenet beállítása az API-n keresztül történő módosítási kérelmekhez (pull requests) a DEFAULT_PULL_MESSAGE módosításával történik.

WEBLATE_SIMPLIFY_LANGUAGES

A nyelvi egyszerűsítési szabályokat a SIMPLIFY_LANGUAGES segítségével állíthatja be.

WEBLATE_DEFAULT_ACCESS_CONTROL

Új projektekhez az alapértelmezett Hozzáférés-vezérlés beállítást a DEFAULT_ACCESS_CONTROL módosításával konfigurálja.

WEBLATE_DEFAULT_RESTRICTED_COMPONENT

Új összetevőknél a Korlátozott hozzáférés alapértelmezett értékét a DEFAULT_RESTRICTED_COMPONENT beállítás szabályozza.

WEBLATE_DEFAULT_TRANSLATION_PROPAGATION

Új összetevőknél a Fordítások terjesztésének engedélyezése alapértelmezett értékét a DEFAULT_TRANSLATION_PROPAGATION beállítás szabályozza.

WEBLATE_DEFAULT_COMMITER_EMAIL

Az alapértelmezett DEFAULT_COMMITER_EMAIL értékét konfigurálja.

WEBLATE_DEFAULT_COMMITER_NAME

A DEFAULT_COMMITER_NAME értékét konfigurálja.

WEBLATE_DEFAULT_SHARED_TM

A DEFAULT_SHARED_TM értékét konfigurálja.

WEBLATE_AKISMET_API_KEY

Az Akismet API-kulcsot konfigurálja, lásd: AKISMET_API_KEY.

WEBLATE_GPG_IDENTITY

A véglegesítések GPG-aláírását konfigurálja, lásd: WEBLATE_GPG_IDENTITY.

WEBLATE_URL_PREFIX

Az URL-előtagot konfigurálja, amely alatt a Weblate fut, lásd: URL_PREFIX.

WEBLATE_MEDIA_URL

Az URL beállítása a MEDIA_ROOT könyvtárból kiszolgált médiafájlokhoz.

WEBLATE_STATIC_URL

Az URL-előtag beállítása a CACHE_DIR könyvtárból kiszolgált statikus fájlokhoz.

WEBLATE_SILENCED_SYSTEM_CHECKS

A nem kívánt ellenőrzések megjelenítését konfigurálja, lásd: 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

A Content-Security-Policy HTTP fejléc testreszabását teszi lehetővé.

WEBLATE_LICENSE_FILTER

A LICENSE_FILTER értékét konfigurálja.

WEBLATE_LICENSE_REQUIRED

A LICENSE_REQUIRED értékét konfigurálja.

WEBLATE_WEBSITE_REQUIRED

A WEBSITE_REQUIRED értékét konfigurálja.

WEBLATE_HIDE_VERSION

A HIDE_VERSION értékét konfigurálja.

WEBLATE_BASIC_LANGUAGES

A BASIC_LANGUAGES értékét konfigurálja.

WEBLATE_DEFAULT_AUTO_WATCH

A DEFAULT_AUTO_WATCH értékét konfigurálja.

WEBLATE_RATELIMIT_ATTEMPTS
WEBLATE_RATELIMIT_LOCKOUT
WEBLATE_RATELIMIT_WINDOW

Added in version 4.6.

A sebességkorlátozás (rate limiter) konfigurálását végzi.

Tipp

Bármely sebességkorlátozási tartomány beállítását megadhatja. Ehhez adjon WEBLATE_ előtagot a Sebességkorlátozás részben ismertetett bármely beállításhoz.

WEBLATE_API_RATELIMIT_ANON
WEBLATE_API_RATELIMIT_USER

Added in version 4.11.

Az API sebességkorlátozását konfigurálja. Alapértelmezés szerint 100/nap névtelen és 5000/óra hitelesített felhasználók esetén.

WEBLATE_ENABLE_HOOKS

Added in version 4.13.

Az ENABLE_HOOKS értékét konfigurálja.

WEBLATE_ENABLE_AVATARS

Added in version 4.6.1.

Az ENABLE_AVATARS értékét konfigurálja.

WEBLATE_AVATAR_URL_PREFIX

Added in version 4.15.

A AVATAR_URL_PREFIX értékét konfigurálja.

WEBLATE_LIMIT_TRANSLATION_LENGTH_BY_SOURCE_LENGTH

Added in version 4.9.

A LIMIT_TRANSLATION_LENGTH_BY_SOURCE_LENGTH értékét konfigurálja.

WEBLATE_SSH_EXTRA_ARGS

Added in version 4.9.

Az SSH_EXTRA_ARGS értékét konfigurálja.

WEBLATE_BORG_EXTRA_ARGS

Added in version 4.9.

A BORG_EXTRA_ARGS értékét konfigurálja, vesszővel elválasztott argumentumok listájaként.

Példa:

environment:
  WEBLATE_BORG_EXTRA_ARGS: --exclude,vcs/
WEBLATE_ENABLE_SHARING

Added in version 4.14.1.

Az ENABLE_SHARING értékét konfigurálja.

WEBLATE_SUPPORT_STATUS_CHECK

Added in version 5.5.

A SUPPORT_STATUS_CHECK értékét konfigurálja.

WEBLATE_EXTRA_HTML_HEAD

Added in version 4.15.

Az EXTRA_HTML_HEAD értékét konfigurálja.

WEBLATE_PRIVATE_COMMIT_EMAIL_TEMPLATE

Added in version 4.15.

A PRIVATE_COMMIT_EMAIL_TEMPLATE értékét konfigurálja.

WEBLATE_PRIVATE_COMMIT_EMAIL_OPT_IN

Added in version 4.15.

A PRIVATE_COMMIT_EMAIL_OPT_IN értékét konfigurálja.

WEBLATE_UNUSED_ALERT_DAYS

Added in version 4.17.

A UNUSED_ALERT_DAYS értékét konfigurálja.

WEBLATE_UPDATE_LANGUAGES

Added in version 4.3.2.

A UPDATE_LANGUAGES értékét konfigurálja.

WEBLATE_CORS_ALLOWED_ORIGINS

Added in version 4.16.

A CORS kérések API-hoz történő engedélyezését konfigurálja megadott forrásokból.

Példa:

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

Added in version 5.6.1: A CORS kérések API-hoz történő engedélyezését konfigurálja minden forrásból.

CLIENT_MAX_BODY_SIZE

Added in version 4.16.3.

A beépített webszerver által elfogadható maximális törzsméretet konfigurálja.

environment:
    CLIENT_MAX_BODY_SIZE: 200m

Tipp

Ezt a változót szándékosan nem előzi meg a WEBLATE_ előtag, mivel a Automatikus SSL tanúsítványok a Let’s Encrypt használatával során használt külső konténerrel közösen használatos.

Kódtároló oldalak hitelesítő adatai

A Docker-konténerben a kódtároló hitelesítő adatai külön változókban vagy egyetlen Python-szótár segítségével is beállíthatók. Az alábbi példák a GitHub módosítási kérelmek (pull request) esetére vonatkoznak, de megfelelő változónevekkel minden Verziókezelő integráció esetében alkalmazhatók.

Egy GitHub konfiguráció például így nézhet ki:

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

Felhasználás módja:

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

Alternatív megoldásként a Python-szótár szövegként is megadható:

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

Vagy egy fájl útvonala is megadható, amely a Python-szótárt tartalmazza:

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

A GITHUB_CREDENTIALS módosításával konfigurálja a GitHub módosítási kérelmek (pull request) szolgáltatót.

WEBLATE_GITLAB_USERNAME
WEBLATE_GITLAB_TOKEN
WEBLATE_GITLAB_HOST
WEBLATE_GITLAB_CREDENTIALS

A GITLAB_CREDENTIALS módosításával konfigurálja a GitLab egyesítési kérelmek (merge request) szolgáltatót.

WEBLATE_GITEA_USERNAME
WEBLATE_GITEA_TOKEN
WEBLATE_GITEA_HOST
WEBLATE_GITEA_CREDENTIALS

A GITEA_CREDENTIALS módosításával konfigurálja a Gitea módosítási kérelmek (pull request) szolgáltatót.

WEBLATE_PAGURE_USERNAME
WEBLATE_PAGURE_TOKEN
WEBLATE_PAGURE_HOST
WEBLATE_PAGURE_CREDENTIALS

A PAGURE_CREDENTIALS módosításával konfigurálja a Pagure egyesítési kérelmek (merge request) szolgáltatót.

WEBLATE_BITBUCKETSERVER_USERNAME
WEBLATE_BITBUCKETSERVER_TOKEN
WEBLATE_BITBUCKETSERVER_HOST
WEBLATE_BITBUCKETSERVER_CREDENTIALS

A BITBUCKETSERVER_CREDENTIALS módosításával konfigurálja a Bitbucket Data Center módosítási kérelmek (pull request) szolgáltatót.

WEBLATE_BITBUCKETCLOUD_USERNAME
WEBLATE_BITBUCKETCLOUD_WORKSPACE
WEBLATE_BITBUCKETCLOUD_TOKEN
WEBLATE_BITBUCKETCLOUD_HOST
WEBLATE_BITBUCKETCLOUD_CREDENTIALS

A BITBUCKETCLOUD_CREDENTIALS módosításával konfigurálja a Bitbucket Cloud módosítási kérelmek (pull request) szolgáltatót.

WEBLATE_AZURE_DEVOPS_USERNAME
WEBLATE_AZURE_DEVOPS_ORGANIZATION
WEBLATE_AZURE_DEVOPS_TOKEN
WEBLATE_AZURE_DEVOPS_HOST
WEBLATE_AZURE_DEVOPS_CREDENTIALS

Az AZURE_DEVOPS_CREDENTIALS módosításával konfigurálja a Azure DevOps egyesítési kérelmek (pull request) szolgáltatót.

Automatikus javaslatbeállítások

A 4.13 verzióban változott: Az automatikus javaslatkészítő szolgáltatások a felhasználói felületen konfigurálhatók, lásd: Automatikus javaslatok.

A meglévő környezeti változók Weblate 4.13 verzióra történő frissítéskor automatikusan importálásra kerülnek, későbbi módosításuk azonban már nem lesz hatással a működésre.

Hitelesítési beállítások

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

LDAP hitelesítés konfigurálása.

Példa közvetlen kötésre:

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

Példa keresésre és kötésre:

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

Példa uniós keresésre és kötésre:

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

Példa keresésre és kötésre Active Directory használatával:

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

A GitHub hitelesítés engedélyezése.

GitHub Enterprise kiadás

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

A GitHub EE hitelesítés engedélyezése.

Bitbucket

WEBLATE_SOCIAL_AUTH_BITBUCKET_OAUTH2_KEY
WEBLATE_SOCIAL_AUTH_BITBUCKET_OAUTH2_SECRET

A Bitbucket hitelesítés engedélyezése.

Facebook

WEBLATE_SOCIAL_AUTH_FACEBOOK_KEY
WEBLATE_SOCIAL_AUTH_FACEBOOK_SECRET

A Facebook OAuth 2 engedélyezése.

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

A Google OAuth 2 engedélyezése.

GitLab

WEBLATE_SOCIAL_AUTH_GITLAB_KEY
WEBLATE_SOCIAL_AUTH_GITLAB_SECRET
WEBLATE_SOCIAL_AUTH_GITLAB_API_URL

A GitLab OAuth 2 engedélyezése.

Gitea

WEBLATE_SOCIAL_AUTH_GITEA_API_URL
WEBLATE_SOCIAL_AUTH_GITEA_KEY
WEBLATE_SOCIAL_AUTH_GITEA_SECRET

A Gitea-hitelesítés engedélyezése.

Azure Active Directory

WEBLATE_SOCIAL_AUTH_AZUREAD_OAUTH2_KEY
WEBLATE_SOCIAL_AUTH_AZUREAD_OAUTH2_SECRET

Az Azure Active Directory hitelesítés engedélyezése, lásd: Microsoft Azure Active Directory.

Azure Active Directory Tenant (bérlői) támogatással

WEBLATE_SOCIAL_AUTH_AZUREAD_TENANT_OAUTH2_KEY
WEBLATE_SOCIAL_AUTH_AZUREAD_TENANT_OAUTH2_SECRET
WEBLATE_SOCIAL_AUTH_AZUREAD_TENANT_OAUTH2_TENANT_ID

Az Azure Active Directory hitelesítés Tenant (bérlői) támogatással való engedélyezése, lásd: Microsoft Azure Active Directory.

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

A Keycloak-hitelesítés engedélyezése, lásd: Keycloak - Open Source Red Hat SSO.

Linux-forgalmazók

A Linux-forgalmazók hitelesítési szolgáltatásainak használata engedélyezhető a megfelelő változók tetszőleges értékre állításával.

WEBLATE_SOCIAL_AUTH_FEDORA
WEBLATE_SOCIAL_AUTH_OPENSUSE
WEBLATE_SOCIAL_AUTH_OPENINFRA
WEBLATE_SOCIAL_AUTH_UBUNTU

Slack

WEBLATE_SOCIAL_AUTH_SLACK_KEY
SOCIAL_AUTH_SLACK_SECRET

A Slack-hitelesítés engedélyezése, lásd: 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

Általános OpenID Connect integráció konfigurálása.

SAML

Az önaláírt SAML kulcsok az első konténer indításkor automatikusan létrejönnek. Ha saját kulcsokat kíván használni, helyezze el a tanúsítványt és a privát kulcsot a következő helyekre: /app/data/ssl/saml.crt és /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

SAML Identity Provider beállítások, lásd: SAML-hitelesítés.

WEBLATE_SAML_ID_ATTR_NAME
WEBLATE_SAML_ID_ATTR_USERNAME
WEBLATE_SAML_ID_ATTR_EMAIL
WEBLATE_SAML_ID_ATTR_USER_PERMANENT_ID

Added in version 4.18.

SAML attribútumok hozzárendelése (mapping).

Egyéb hitelesítési beállítások

WEBLATE_NO_EMAIL_AUTH

Bármilyen értékre állítva letiltja az e-mailes hitelesítést. Lásd: Jelszavas hitelesítés kikapcsolása.

WEBLATE_MIN_PASSWORD_SCORE

A jelszavak minimális erősségi pontszáma a zxcvbn értékelése alapján. Alapértelmezés: 3. Állítsa 0-ra az ellenőrzés kikapcsolásához.

PostgreSQL adatbázis beállítása

Az adatbázist a docker-compose.yml hozza létre, így ezek a beállítások a Weblate- és a PostgreSQL-konténerekre egyaránt érvényesek.

POSTGRES_PASSWORD

PostgreSQL jelszó.

POSTGRES_USER

PostgreSQL felhasználónév.

POSTGRES_DB

PostgreSQL adatbázisnév.

POSTGRES_HOST

PostgreSQL szerver hosztneve vagy IP-címe. Alapértelmezés: database.

POSTGRES_PORT

PostgreSQL szerver portja. Alapértelmezés szerint nincs megadva (az alapértelmezett értéket használja).

POSTGRES_SSL_MODE

Meghatározza, hogyan kezelje a PostgreSQL az SSL-kapcsolatokat. A választható módokról bővebben: SSL Mode Descriptions.

POSTGRES_ALTER_ROLE

Annak a PostgreSQL szerepkörnek a nevét adja meg, amelyet az adatbázis-migráció során módosítani kell. Lásd: Weblate konfigurálása PostgreSQL használatára.

Alapértelmezett érték: POSTGRES_USER.

POSTGRES_CONN_MAX_AGE

Added in version 4.8.1.

Az adatbázis-kapcsolat élettartama másodpercben. 0 esetén a kapcsolat minden kérés végén bezáródik.

A 5.1 verzióban változott: Alapértelmezés szerint a kapcsolatok időkorlát nélkül fennmaradnak.

A kapcsolat folyamatos fenntartásának engedélyezése több nyitott kapcsolatot eredményezhet. Előtte érdemes az adatbázis konfigurációját módosítani.

Példa konfiguráció:

environment:
    POSTGRES_CONN_MAX_AGE: 3600
POSTGRES_DISABLE_SERVER_SIDE_CURSORS

Added in version 4.9.1.

Letiltja az adatbázison belüli szerveroldali kurzorokat. Erre bizonyos pgbouncer konfigurációk esetén szükség lehet.

Példa konfiguráció:

environment:
    POSTGRES_DISABLE_SERVER_SIDE_CURSORS: 1
WEBLATE_DATABASES

Added in version 5.1.

Hamísra állítva kikapcsolja az adatbázis-kapcsolat környezeti változókon alapuló beállítását. Kézi konfiguráláshoz használja: Beállítások felülírása a adat kötetből.

MySQL vagy MariaDB szerver

A MySQL és a MariaDB nem konfigurálhatók környezeti változókon keresztül. A Weblate-tel való használatról lásd: MySQL és MariaDB. Kézi konfiguráláshoz használja a WEBLATE_DATABASES változót.

Adatbázis-mentési beállítások

WEBLATE_DATABASE_BACKUP

A napi adatbázis-mentés beállítása a DATABASE_BACKUP segítségével. Alapértelmezett érték: plain.

Gyorsítótár-szerver beállítása

A Redis használatát a Weblate kifejezetten ajánlja, Docker-környezetben kötelező Redis példány biztosítása.

REDIS_HOST

A Redis szerver gépneve vagy IP-címe. Alapértelmezés: cache.

REDIS_PORT

A Redis szerver portja. Alapértelmezés: 6379.

REDIS_DB

A Redis adatbázis száma. Alapértelmezett érték: 1.

REDIS_PASSWORD

A Redis szerver jelszava. Alapértelmezés szerint nem használt.

REDIS_TLS

A Redis-kapcsolat SSL-használatának engedélyezése.

REDIS_VERIFY_SSL

A Redis SSL-tanúsítvány ellenőrzésének letiltására használható.

E-mail szerver beállítása

A kimenő e-mailek működéséhez e-mail szerver szükséges.

Példa TLS-konfigurációra:

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

Példa SSL-konfigurációra:

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

A levelezőszerver hosztneve vagy IP-címe.

WEBLATE_EMAIL_PORT

Levelezőszerver portja. Alapértelmezés: 25.

Lásd még

EMAIL_PORT

WEBLATE_EMAIL_HOST_USER

E-mail hitelesítési felhasználónév.

Lásd még

EMAIL_HOST_USER

WEBLATE_EMAIL_HOST_PASSWORD

E-mail hitelesítési jelszó.

WEBLATE_EMAIL_USE_SSL

Megadja, hogy implicit TLS (biztonságos) kapcsolatot használjon-e az SMTP szerverrel. Az ilyen TLS-kapcsolatot a legtöbb dokumentáció SSL néven említi, jellemzően a 465-ös porton működik. Ha problémát tapasztal, próbálja meg az explicit TLS beállítást: WEBLATE_EMAIL_USE_TLS.

A 4.11 verzióban változott: Az SSL/TLS támogatás automatikusan engedélyezésre kerül a WEBLATE_EMAIL_PORT alapján.

WEBLATE_EMAIL_USE_TLS

Meghatározza, hogy TLS (biztonságos) kapcsolatot használjon-e az SMTP szerverrel. Ez az explicit TLS-kapcsolatokra vonatkozik, jellemzően a 587-es vagy 25-ös porton. Ha a kapcsolat elakad, nézze meg az implicit TLS beállítást: WEBLATE_EMAIL_USE_SSL.

A 4.11 verzióban változott: Az SSL/TLS támogatás automatikusan engedélyezésre kerül a WEBLATE_EMAIL_PORT alapján.

WEBLATE_EMAIL_BACKEND

A Django háttérrendszer konfigurálása e-mailek küldéséhez.

WEBLATE_AUTO_UPDATE

Meghatározza, hogy a Weblate frissítse-e a tárolókat, és milyen módon.

Lásd még

AUTO_UPDATE

Megjegyzés

Ez logikai értékű beállítás (használja a "true" vagy "false" értékeket).

Webhely-integráció

WEBLATE_GET_HELP_URL

A GET_HELP_URL beállítása.

WEBLATE_STATUS_URL

A STATUS_URL beállítása.

A LEGAL_URL beállítása.

WEBLATE_PRIVACY_URL

A PRIVACY_URL beállítása.

Hibajelentések gyűjtése és teljesítmény monitorozása

Javasolt a telepítés során fellépő hibák rendszerszintű gyűjtése, lásd: Hibajelentések gyűjtése és teljesítmény monitorozása.

A Rollbar támogatás engedélyezéséhez állítsa be a következőket:

ROLLBAR_KEY

A Rollbar hozzáférési tokenje a jelentések küldéséhez.

ROLLBAR_ENVIRONMENT

A Rollbar környezete. Alapértelmezés: production.

A Sentry támogatás engedélyezéséhez állítsa be a következőket:

SENTRY_DSN

A Sentry DSN címe. Lásd: SENTRY_DSN.

SENTRY_ENVIRONMENT

A Sentry környezet (opcionális). Alapértelmezés: WEBLATE_SITE_DOMAIN.

SENTRY_TRACES_SAMPLE_RATE

A SENTRY_TRACES_SAMPLE_RATE beállítása.

Példa:

environment:
  SENTRY_TRACES_SAMPLE_RATE: 0.5
SENTRY_PROFILES_SAMPLE_RATE

A SENTRY_PROFILES_SAMPLE_RATE beállítása.

Példa:

environment:
  SENTRY_PROFILES_SAMPLE_RATE: 0.5
SENTRY_SEND_PII

A SENTRY_SEND_PII beállítása.

Lokalizációs CDN

WEBLATE_LOCALIZE_CDN_URL
WEBLATE_LOCALIZE_CDN_PATH

Added in version 4.2.1.

A JavaScript lokalizációs CDN beállítása.

A WEBLATE_LOCALIZE_CDN_PATH a konténeren belüli elérési útvonal. Tartós tárhelyen tárolandó, nem ideiglenes helyen.

Egy lehetséges megoldás, ha a Weblate adatkönyvtárába helyezi:

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

Megjegyzés

A fájlok kiszolgálásának beállítása a felhasználó feladata. A Weblate csak a konfigurált helyen tárolja azokat.

Engedélyezett alkalmazások, ellenőrzések, kiegészítők, gépi fordítás vagy automatikus javítások módosítása

A beépített konfiguráció módosítható az alábbi változókkal:

WEBLATE_ADD_APPS
WEBLATE_REMOVE_APPS
WEBLATE_ADD_CHECK
WEBLATE_REMOVE_CHECK
WEBLATE_ADD_AUTOFIX
WEBLATE_REMOVE_AUTOFIX
WEBLATE_ADD_ADDONS
WEBLATE_REMOVE_ADDONS
WEBLATE_ADD_MACHINERY

Added in version 5.6.1.

WEBLATE_REMOVE_MACHINERY

Added in version 5.6.1.

Példa:

environment:
  WEBLATE_REMOVE_AUTOFIX: weblate.trans.autofixes.whitespace.SameBookendingWhitespace
  WEBLATE_ADD_ADDONS: customize.addons.MyAddon,customize.addons.OtherAddon

Konténerbeállítások

WEBLATE_WORKERS

Added in version 4.6.1.

A konténerben futó alapértelmezett munkafolyamatok száma. Ha nincs megadva, induláskor automatikusan a CPU-magok számához igazodik.

Ez alapján kerül meghatározásra többek között: CELERY_MAIN_OPTIONS, CELERY_NOTIFY_OPTIONS, CELERY_MEMORY_OPTIONS, CELERY_TRANSLATE_OPTIONS, CELERY_BACKUP_OPTIONS, CELERY_BEAT_OPTIONS, és WEB_WORKERS. Ezekkel a beállításokkal testreszabás végezhető.

CELERY_MAIN_OPTIONS
CELERY_NOTIFY_OPTIONS
CELERY_MEMORY_OPTIONS
CELERY_TRANSLATE_OPTIONS
CELERY_BACKUP_OPTIONS
CELERY_BEAT_OPTIONS

E változók segítségével a Celery munkafolyamatok beállításai módosíthatók. Például a párhuzamosság (–concurrency 16) vagy a feldolgozó háttér (pl. –pool=gevent).

Alapértelmezés szerint a párhuzamos folyamatok száma a WEBLATE_WORKERS értékén alapul.

Példa:

environment:
  CELERY_MAIN_OPTIONS: --concurrency 16
CELERY_SINGLE_PROCESS

Added in version 5.7.1: Ez a változó 1 értékre állítva csak egyetlen Celery-folyamatot indít. Csökkenti a memóriahasználatot, de ronthatja a teljesítményt.

environment:
  CELERY_SINGLE_PROCESS: 1
WEB_WORKERS

A futtatandó WSGI munkafolyamatok számának beállítása.

Alapértelmezés: WEBLATE_WORKERS.

Példa:

environment:
  WEB_WORKERS: 32

A 5.9 verzióban változott: A Docker-konténer az 5.9-es verzió óta két WSGI folyamatot indít, a WEB_WORKERS határozza meg, hány szálat kap egy-egy folyamat.

WEBLATE_SERVICE

Meghatározza, mely szolgáltatások fussanak a konténeren belül. Használja a Vízszintes skálázás konfigurálására.

A következő szolgáltatások érhetők el:

celery-beat

Celery feladatütemező – egyszerre csak egy példány futhat. Ez végzi az adatbázis-struktúra migrációját is, így ezt kell elsőként elindítani.

celery-backup

Celery munkafolyamat biztonsági mentésekhez – szintén csak egy példány engedélyezett.

celery-celery

Általános Celery munkafolyamat.

celery-memory

Fordítási memória Celery munkafolyamat.

celery-notify

Értesítések Celery munkafolyamat.

celery-translate

Automatikus fordítás Celery munkafolyamat.

web

Webszerver.

WEBLATE_ANUBIS_URL

Added in version 5.11.4.

Az Anubis szerver URL-címe, amely a kérések hitelesítését végzi. Ez hasznos lehet bejövő HTTP-kérések szűrésére proof-of-work (számítási feladaton alapuló igazolás) segítségével AI-robotok megállítására. A funkcióhoz be kell állítani az Anubis for Subrequest Authentication szolgáltatást.

Ez megvalósítható például docker compose segítségével:

anubis:
   image: ghcr.io/techarohq/anubis:latest
   environment:
      BIND: ":8923"
      DIFFICULTY: "4"
      METRICS_BIND: ":9090"
      SERVE_ROBOTS_TXT: "false"
      TARGET: " "
      OG_PASSTHROUGH: "false"
      ED25519_PRIVATE_KEY_HEX: "$(openssl rand -hex 32)"

Ezután a Weblate-ben engedélyezheti az Anubis használatát ezzel:

environment:
   WEBLATE_ANUBIS_URL: http://anubis:8923

Docker-konténer kötetek

A Weblate-konténer két kötetet exportál: data és cache. Más szolgáltatások (például PostgreSQL vagy Redis) szintén használnak köteteket, de ezek nem részei ennek a dokumentációnak.

A data kötet /app/data néven kerül csatolásra, és tartós adatok – például klónozott tárolók – vagy a Weblate testreszabásának tárolására szolgál. A DATA_DIR részletesen ismerteti a tartalmát.

A Docker-kötet elhelyezkedése a hoszt rendszeren a Docker konfigurációjától függ, de jellemzően a következő helyen található: /var/lib/docker/volumes/weblate-docker_weblate-data/_data/ (az útvonal a docker-compose könyvtár, a konténer és a kötet nevét tartalmazza).

A cache kötet /app/cache néven kerül csatolásra, statikus fájlokat és a CACHE_DIR tartalmát tárolja. Indításkor újra létrejön, így ideiglenes fájlrendszerrel is csatolható, például tmpfs használatával.

Kézi létrehozás esetén a könyvtárak tulajdonosának UID 1000-nek kell lennie, mivel a konténeren belül ez a felhasználó kerül használatra.

A Weblate-konténer futtatható írásvédett gyökérfájlrendszerrel is. Ebben az esetben két további tmpfs kötetet kell csatolni: /tmp és /run.

Írásvédett gyökérfájlrendszer

Added in version 4.18.

Ha a konténer írásvédett gyökérfájlrendszerrel fut, két további tmpfs kötet szükséges: /tmp és /run.

Konfiguráció a környezeti változókon túl

A Docker környezeti változók célja, hogy elérhetővé tegyék a Weblate telepítéséhez szükséges legfontosabb konfigurációs beállításokat.

Ha olyan beállítást talál, amely nem érhető el környezeti változóként, de indokoltnak látja annak kiterjesztését, jelezheti a fejlesztők felé.

Az ilyen beállítások ettől függetlenül módosíthatók, akár a adat kötetből, akár Docker image kiterjesztésével.

Beállítások felülírása a adat kötetből

Hozzon létre egy fájlt a következő helyen: /app/data/settings-override.py (az adat kötet gyökerében), ha a környezeti változókon keresztül definiált beállításokat szeretné kiegészíteni vagy felülírni.

Beállítások testreszabása a Docker-kép kiterjesztésével

A beállításokat az adat kötet helyett a Docker-kép szintjén is testreszabhatjuk:

  1. Saját Python-csomag létrehozása.

  2. Adjon hozzá egy modult a csomagjához, amely importálja az összes beállítást a weblate.settings_docker modulból.

    Például az egyéni modul részben bemutatott példastruktúrán belül létrehozhat egy fájlt a weblate_customization/weblate_customization/settings.py útvonalon a következő kezdőkóddal:

    from weblate.settings_docker import *
    
  3. Hozzon létre egy egyéni Dockerfile fájlt, amely a hivatalos Weblate Docker-képre épül, majd telepíti a saját csomagját, és a DJANGO_SETTINGS_MODULE környezeti változót az Ön beállítási moduljára állítja:

    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. A hivatalos Weblate Docker-kép használata helyett építsen egy egyéni képet ebből a Dockerfile fájlból.

    Erre nincs egy elegáns megoldás a docker-compose.override.yml fájl használatával, ahogyan az a következő hivatkozásban is olvasható: GitHUB docker hiba #7231. Elméletileg hozzáadhatja a build: . beállítást a weblate csomóponthoz ebben a fájlban, azonban ez esetben az egyedi képfájlt a rendszer weblate/weblate névvel fogja megcímkézni, ami problémát okozhat.

    Ezért ahelyett, hogy változtatás nélkül használná a hivatalos tárolóból származó docker-compose.yml fájlt, és azt docker-compose.override.yml segítségével bővítené ki, célszerűbb lehet, ha készít egy másolatot a hivatalos docker-compose.yml fájlról, és ebben a másolatban módosítja az image: weblate/weblate sort build: . értékre.

    További részletekért lásd a build hivatkozás a Compose fájlban, amely ismerteti, hogyan lehet képfájlt forrásból építeni docker-compose használatával.

  5. Bővítse saját egyedi beállítási modulját további beállítások megadásával vagy meglévők újradefiniálásával.

    A beállításokat az importálási utasítás előtt vagy után is megadhatja, attól függően, hogy mely beállítások élvezzenek elsőbbséget. Az import utasítás előtti beállításokat a környezeti változók és az adatkötetben megadott felülírások módosíthatják. Az import utáni beállításokat azonban már nem lehet felülírni.

    Továbblépve akár újraalkothatja a weblate.docker_settings egyes működési elemeit is, ahogyan azt a következő linken láthatja: a fájl tartalma, például beállítások környezeti változóként való elérhetővé tételét vagy a beállítások Python fájlokon keresztüli felülírását az adatkötetből.

Logó és egyéb statikus fájlok cseréje

A Weblate-hez tartozó statikus fájlokat le lehet cserélni azáltal, hogy a következő könyvtárba helyezi őket: /app/data/python/customize/static (lásd: Docker-konténer kötetek). Például a /app/data/python/customize/static/favicon.ico fájl létrehozása lecseréli a favicon-t.

Tipp

Ezek a fájlok a konténer indulásakor kerülnek átmásolásra a megfelelő helyre, tehát minden módosítás után szükséges a Weblate újraindítása.

Ez a módszer sablonok felülírására is alkalmazható. Például a Jogi modul dokumentumokat a következő útvonalra lehet elhelyezni: /app/data/python/customize/templates/legal/documents.

Alternatívaként saját modult is létrehozhat (lásd: A Weblate testreszabása), amelyet külön kötetként csatolhat a Docker-konténerhez, például így:

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

PostgreSQL szerver konfigurálása

A PostgreSQL-konténer alapértelmezett konfigurációt használ, amely nem használja ki hatékonyan az elérhető CPU-magokat vagy a memóriát. A teljesítmény javítása érdekében javasolt a konfiguráció testreszabása.

A konfiguráció a Database Configuration (Adatbázis-konfiguráció) szakaszban leírtak szerint módosítható: https://hub.docker.com/_/postgres. A környezetéhez illeszkedő beállítások automatikusan generálhatók a következő eszköz segítségével: https://pgtune.leopard.in.ua/.

Konténer belső működése

A konténer a supervisor programot használja az egyes szolgáltatások indítására. Vízszintes skálázás esetén egy konténer csak egyetlen szolgáltatást indít el.

A szolgáltatások állapotának ellenőrzéséhez használja a következőt:

docker compose exec --user weblate weblate supervisorctl status

Az egyes Celery várólistákhoz külön szolgáltatások tartoznak (lásd részletesen: Háttérfeladatok Celery használatával). Bizonyos feladatok feldolgozása leállítható az adott munkafolyamat leállításával:

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