டோக்கரைப் பயன்படுத்தி நிறுவுதல்

With dockerized Weblate deployment you can get your personal Weblate instance up and running in seconds. All of Weblate's dependencies are already included. PostgreSQL is set up as the default database and Valkey as a caching backend.

வன்பொருள் தேவைகள்

வலைபெயர்ப்பு எந்த சமகால வன்பொருளிலும் சிக்கல்கள் இல்லாமல் இயங்க வேண்டும், பின்வருபவை ஒரு ஓச்டில் வெப்லேட்டை இயக்க தேவையான குறைந்தபட்ச உள்ளமைவு (வெப்ளேட், தரவுத்தளம் மற்றும் வலை சேவையகம்):

  • 3 சிபி ரேம்

  • 2 சிபியு கோர்கள்

  • 1 சிபி சேமிப்பு இடம்

Note

வலைபெயர்ப்பு நிறுவுவதற்கான உண்மையான தேவைகள் அதில் நிர்வகிக்கப்படும் மொழிபெயர்ப்புகளின் அளவின் அடிப்படையில் பெரிதும் வேறுபடுகின்றன.

நினைவக பயன்பாடு

அதிக நினைவகம் சிறந்தது - இது அனைத்து நிலைகளிலும் (கோப்பு முறைமை, தரவுத்தளம் மற்றும் வெப்லேட்) தேக்குவதற்கு பயன்படுத்தப்படுகிறது. நூற்றுக்கணக்கான மொழிபெயர்ப்பு கூறுகளுக்கு, குறைந்தது 4 சிபி ரேம் பரிந்துரைக்கப்படுகிறது.

Hint

For systems with less memory than recommended, ஒற்றை-செயல்முறை செலரி அமைப்பு is recommended.

சிபியு பயன்பாடு

பல ஒரே நேரத்தில் பயனர்கள் தேவையான சிபியு கோர்களின் அளவை அதிகரிக்கின்றனர்.

சேமிப்பக பயன்பாடு

வழக்கமான தரவுத்தள சேமிப்பக பயன்பாடு 1 மில்லியன் புரவலன் செய்யப்பட்ட சொற்களுக்கு 300 எம்பி ஆகும்.

நகலி செய்யப்பட்ட களஞ்சியங்களுக்குத் தேவையான சேமிப்பக இடம் மாறுபடும், ஆனால் வலைபெயர்ப்பு ஆழமற்ற குளோன்களைச் செய்வதன் மூலம் அவற்றின் அளவை குறைவாக வைத்திருக்க முயற்சிக்கிறது.

முனைகள்

For small and medium-sized sites (millions of hosted words), all Weblate components (see கட்டிடக்கலை கண்ணோட்டம்) can be run on a single node.

When you grow to hundreds of millions of hosted words, it is recommended to have a dedicated node for database (see வலைபெயர்ப்புடுக்கான தரவுத்தள அமைப்பு).

நிறுவல்

Hint

The following examples assume you have a working Docker environment, with docker-compose-plugin installed. Please check the Docker documentation for instructions.

This creates a Weblate deployment server via HTTP, so you should place it behind HTTPS terminating proxy. You can also deploy with a HTTPS proxy, see லெட்ச் குறியாக்கத்தைப் பயன்படுத்தி தானியங்கி எச்எச்எல் சான்றிதழ்கள். For larger setups, please see கிடைமட்டமாக அளவிடுதல்.

  1. வலைபெயர்ப்பு-டோக்கர் ரெப்போ குளோன்:

    git clone https://github.com/WeblateOrg/docker-compose.git weblate-docker
    cd weblate-docker
    
  2. Create a docker-compose.override.yml file with your settings. See கப்பல்துறை சூழல் மாறிகள் for full list of environment variables.

    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
    

    Note

    If WEBLATE_ADMIN_PASSWORD is not set, the admin user is created with a random password shown on first startup.

    The provided example makes Weblate listen on port 80, edit the port mapping in the docker-compose.override.yml file to change it.

  3. வலைபெயர்ப்பு கொள்கலன்களைத் தொடங்குங்கள்:

    docker compose up
    

Enjoy your Weblate deployment, it's accessible on port 80 of the weblate container.

கப்பல்துறை பட பதிவைத் தேர்ந்தெடுப்பது

பின்வரும் பதிவேடுகளுக்கு வலைபெயர்ப்பு கொள்கலன்கள் வெளியிடப்படுகின்றன:

Note

எல்லா எடுத்துக்காட்டுகளும் தற்போது கப்பல்துறை மையத்திலிருந்து படங்களைப் பெறுகின்றன, தயவுசெய்து வேறு பதிவேட்டைப் பயன்படுத்த உள்ளமைவை சரிசெய்யவும்.

கப்பல்துறை பட குறிச்சொல்லைத் தேர்ந்தெடுப்பது

உங்கள் சூழல் மற்றும் எதிர்பார்ப்புகளுடன் பொருந்தக்கூடிய குறிச்சொல்லைத் தேர்வுசெய்க:

குறிச்சொல் பெயர்

விளக்கம்

வழக்கு பயன்படுத்து

latest

வலைபெயர்ப்பு நிலையான வெளியீடு, அண்மைக் கால குறிக்கப்பட்ட வெளியீட்டுடன் பொருந்துகிறது

விளைவாக்கம் சூழலில் புதுப்பிப்புகளை உருட்டுதல்

<MAJOR>

வலைபெயர்ப்பு நிலையான வெளியீடு

தயாரிப்பு சூழலில் ஒரு முக்கிய பதிப்பிற்குள் புதுப்பிப்புகளை உருட்டுதல்

<MAJOR>.<MINOR>

வலைபெயர்ப்பு நிலையான வெளியீடு

தயாரிப்பு சூழலில் ஒரு சிறிய பதிப்பிற்குள் புதுப்பிப்புகளை உருட்டுதல்

<VERSION>.<PATCH>

வலைபெயர்ப்பு நிலையான வெளியீடு

விளைவாக்கம் சூழலில் நன்கு வரையறுக்கப்பட்ட வரிசைப்படுத்தல்

edge

கப்பல்துறை கொள்கலனில் வளர்ச்சி மாற்றங்களுடன் வலைபெயர்ப்பு நிலையான வெளியீடு (எடுத்துக்காட்டாக புதுப்பிக்கப்பட்ட சார்புகள்)

ஒரு நிலை சூழலில் புதுப்பிப்புகளை உருட்டுதல்

edge-<DATE>-<SHA>

கப்பல்துறை கொள்கலனில் வளர்ச்சி மாற்றங்களுடன் வலைபெயர்ப்பு நிலையான வெளியீடு (எடுத்துக்காட்டாக புதுப்பிக்கப்பட்ட சார்புகள்)

ஒரு நிலை சூழலில் நன்கு வரையறுக்கப்பட்ட வரிசைப்படுத்தல்

bleeding

மேம்பாட்டு பதிப்பு அறிவிலி இருந்து வலைபெயர்ப்பு செய்கிறது

வரவிருக்கும் வலைத்தள அம்சங்களை சோதிக்க புதுப்பிப்புகளை உருட்டுதல்

bleeding-<DATE>-<SHA>

மேம்பாட்டு பதிப்பு அறிவிலி இருந்து வலைபெயர்ப்பு செய்கிறது

வரவிருக்கும் வலைபெயர்ப்பு அம்சங்களை சோதிக்க நன்கு வரையறுக்கப்பட்ட வரிசைப்படுத்தல்

ஒவ்வொரு படமும் எங்கள் தொஒ வெளியிடப்படுவதற்கு முன்பு சோதிக்கப்படுகிறது, எனவே இரத்தப்போக்கு பதிப்பு கூட பயன்படுத்த மிகவும் பாதுகாப்பாக இருக்க வேண்டும்.

வெளியிடப்பட்ட குறிச்சொற்களின் முழு பட்டியலையும் கிதுப் தொகுப்புகள் இல் காணலாம்

https ஆதரவுடன் கப்பல்துறை கொள்கலன்

Please see நிறுவல் for generic deployment instructions, this section only mentions differences compared to it.

எச்.எச்.எல் பதிலாள் நிறுத்துகிறது

SSL can be terminated outside Weblate container. To make this work well together, several headers need to be passed to the container so that it is aware of its actual environment. In more detail, these headers are described in தலைகீழ் ப்ராக்சிக்கு பின்னால் இயங்குகிறது.

எடுத்துக்காட்டு nginx தலைகீழ் கொள்கலனுக்கான தலைகீழ் பதிலாள் உள்ளமைவு.
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;
}
வெளிப்புற எச்எச்எல் முடிவுக்கு கப்பல்துறை கொள்கலன் சூழல்.
WEBLATE_ENABLE_HTTPS=1
WEBLATE_IP_PROXY_HEADER=HTTP_X_FORWARDED_FOR

சொந்த ssl சான்றிதழ்களைப் பயன்படுத்துதல்

In case you have own SSL certificate you want to use, simply place the files into the Weblate data volume (see கப்பல்துறை கொள்கலன் தொகுதிகள்):

  • ssl/fullchain.pem containing the certificate including any needed CA certificates

  • ssl/privkey.pem containing the private key

Both of these files must be owned by the same user as the one starting the docker container and have file mask set to 600 (readable and writable only by the owning user).

கூடுதலாக, வலைபெயர்ப்பு கொள்கலன் இப்போது துறைமுகம் 4443 இல் எச்எச்எல் இணைப்புகளை ஏற்றுக் கொள்ளும், டோக்கரில் http களுக்கான துறைமுகம் பகிர்தலை நீங்கள் சேர்க்க விரும்புவீர்கள்:

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

If you already host other sites on the same server, it is likely ports 80 and 443 are used by a reverse proxy, such as NGINX. To pass the HTTPS connection from NGINX to the docker container, you can use the following configuration:

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

உங்கள் சூழலில் இருந்து உண்மையான மதிப்புகளுடன் <SITE_URL>, <SITE> மற்றும் <EXPOSED_DOCKER_PORT> ஐ மாற்றவும்.

லெட்ச் குறியாக்கத்தைப் பயன்படுத்தி தானியங்கி எச்எச்எல் சான்றிதழ்கள்

In case you want to use Let’s Encrypt automatically generated SSL certificates on public installation, you need to add a reverse HTTPS proxy an additional Docker container, https-portal will be used for that. This is made use of in the docker-compose-https.yml file. Then create a docker-compose-https.override.yml file with your settings:

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'

Whenever invoking docker compose you need to pass both files to it, and then do:

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

கப்பல்துறை கொள்கலனை மேம்படுத்துதல்

வழக்கமாக வலைபெயர்ப்பு கொள்கலனை மட்டுமே புதுப்பித்து, உங்களிடம் உள்ள பதிப்பில் போச்ட்கிரெச்க்யூல் கொள்கலனை மட்டுமே வைத்திருப்பது நல்லது, ஏனெனில் postgresql ஐ மேம்படுத்துவது மிகவும் வேதனையானது மற்றும் பெரும்பாலான சந்தர்ப்பங்களில் பல நன்மைகளைத் தராது.

Changed in version 4.17-1: Since Weblate 4.17-1, the Docker container uses Django 4.2 what requires PostgreSQL 12 or newer, please upgrade it prior to upgrading Weblate. See postgresql கொள்கலனை மேம்படுத்துதல்.

தற்போதுள்ள டோக்கர்-கம்ப்சுடன் ஒட்டிக்கொண்டு இதைச் செய்யலாம் மற்றும் அண்மைக் கால படங்களை இழுத்து மறுதொடக்கம் செய்யுங்கள்:

# 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

வலைபெயர்ப்பு தரவுத்தளம் முதல் தொடக்கத்தில் தானாக இடம்பெயரப்பட வேண்டும், மேலும் கூடுதல் கையேடு செயல்கள் தேவையில்லை.

Note

Upgrades across major versions are not supported by Weblate. For example, if you are on 3.x series and want to upgrade to 4.x, first upgrade to the latest 4.0.x-y image (at time of writing this it is the 4.0.4-5), which will do the migration and then continue upgrading to newer versions.

You might also want பெறுநர் புதுப்பிப்பு the docker-compose repository, though it's not needed in பெரும்பாலானவை case. See postgresql கொள்கலனை மேம்படுத்துதல் க்கு upgrading the PostgreSQL server.

postgresql கொள்கலனை மேம்படுத்துதல்

postgresql கொள்கலன்கள் பதிப்பிற்கு இடையில் தானியங்கி மேம்படுத்தலை ஆதரிக்காது, நீங்கள் மேம்படுத்தலை கைமுறையாக செய்ய வேண்டும். பின்வரும் படிகள் மேம்படுத்துவதற்கான விருப்பங்களில் ஒன்றைக் காட்டுகின்றன.

  1. வலைபெயர்ப்பு கொள்கலன் நிறுத்துங்கள்:

    docker compose stop weblate cache
    
  2. தரவுத்தளத்தை காப்புப் பிரதி எடுக்கவும்:

    docker compose exec database pg_dumpall --clean --if-exists --username weblate > backup.sql
    
  3. தரவுத்தள கொள்கலனை நிறுத்துங்கள்:

    docker compose stop database
    
  4. postgresql தொகுதியை அகற்று:

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

    Hint

    The volume name contains name of the Docker Compose project, which is by default the directory name what is weblate-docker in this documentation.

  5. Adjust docker-compose.yml பெறுநர் use புதிய PostgreSQL version.

  6. தரவுத்தள கொள்கலனைத் தொடங்கவும்:

    docker compose up -d database
    
  7. காப்புப்பிரதியிலிருந்து தரவுத்தளத்தை மீட்டெடுக்கவும்:

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

    Hint

    Please சரிபார் that the database பெயர் matches POSTGRES_DB.

  8. (விரும்பினால்) வலைபெயர்ப்பு பயனருக்கான கடவுச்சொல்லைப் புதுப்பிக்கவும். கடவுச்சொற்களை சேமிப்பதற்கான வழி மாற்றப்பட்டுள்ளதால் இது போச்ட்கிரெச்யூல் 14 அல்லது 15 க்கு இடம்பெயரும்போது இது தேவைப்படலாம்:

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

    Hint

    Please சரிபார் that the database பெயர் matches POSTGRES_DB.

  9. மீதமுள்ள அனைத்து கொள்கலன்களையும் தொடங்கவும்:

    docker compose up -d
    

நிர்வாகி உள்நுழைவு

After container setup, you can sign in as admin user with password provided in WEBLATE_ADMIN_PASSWORD, or a random password generated on first start if that was not set.

To reset admin password, restart the container with WEBLATE_ADMIN_PASSWORD set to new password.

செயல்முறைகளின் எண்ணிக்கை மற்றும் நினைவக நுகர்வு

WSGI மற்றும் செலரி இரண்டிற்கும் தொழிலாளர் செயல்முறைகளின் எண்ணிக்கை சிபியு களின் எண்ணிக்கையின் அடிப்படையில் தானாகவே தீர்மானிக்கப்படுகிறது. இது பெரும்பாலான முகில் மெய்நிகர் இயந்திரங்களுக்கு நன்றாக வேலை செய்கிறது, ஏனெனில் இவை பொதுவாக சில சிபியு கள் மற்றும் நல்ல அளவிலான நினைவகத்தைக் கொண்டுள்ளன.

உங்களிடம் நிறைய சிபியு கோர்கள் இருந்தால், நினைவக சிக்கல்களைத் தாக்கினால், தொழிலாளர்களின் எண்ணிக்கையைக் குறைக்க முயற்சிக்கவும்:

environment:
  WEBLATE_WORKERS: 2

தனிப்பட்ட தொழிலாளர் வகைகளையும் நீங்கள் நன்றாக மாற்றலாம்:

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

ஒரே ஒரு செலரி செயல்முறையை மட்டுமே இயக்குவதன் மூலம் நினைவக பயன்பாட்டை மேலும் குறைக்க முடியும்:

environment:
  CELERY_SINGLE_PROCESS: 1

கிடைமட்டமாக அளவிடுதல்

Added in version 4.6.

You can run multiple Weblate containers to scale the service horizontally. The /app/data volume has to be shared by all containers, it is recommended to use cluster filesystem such as GlusterFS for this. The /app/cache volume should be separate for each container.

Each Weblate container has defined role using WEBLATE_SERVICE environment variable. Please follow carefully the documentation as some of the services should be running just once in the cluster, and the order of the services matters as well.

You can find example setup in the docker-compose repo as docker-compose-split.yml.

கப்பல்துறை சூழல் மாறிகள்

Many of Weblate's உள்ளமைவு can be set in the Docker container using the environment variables described below.

If you need to define a setting not exposed through Docker environment variables, see சுற்றுச்சூழல் மாறிகளுக்கு அப்பால் உள்ளமைவு.

கடந்து செல்லும் ரகசியங்கள்

Added in version 5.0.

Weblate container supports passing secrets as files. To utilize that, append _FILE suffix to the environment variable and pass secret file via Docker.

Related docker-compose.yml might look like:

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

பொதுவான அமைப்புகள்

WEBLATE_DEBUG

Configures Django debug mode using DEBUG.

உதாரணமாக:

environment:
  WEBLATE_DEBUG: 1
WEBLATE_LOGLEVEL

Configures the logging verbosity. Set this to DEBUG to get more detailed logs.

Defaults to INFO when WEBLATE_DEBUG is turned off, DEBUG is used when debug mode is turned on.

For more silent logging use ERROR or WARNING.

WEBLATE_LOGLEVEL_DATABASE

தரவுத்தள வினவல்கள் சொற்களஞ்சியத்தின் பதிவை உள்ளமைக்கிறது.

WEBLATE_LOG_GELF_HOST

Added in version 5.9.

கெல்ஃப் டி.சி.பி இணைப்பைப் பயன்படுத்தி தொலை பதிவை உள்ளமைக்கிறது. கிரேலாக் உடன் ஒருங்கிணைக்க பயன்படுத்தலாம்.

WEBLATE_LOG_GELF_PORT

Added in version 5.9.

Use custom port for WEBLATE_LOG_GELF_HOST, defaults to 12201.

WEBLATE_SITE_TITLE

அனைத்து பக்கங்களின் தலைப்பிலும் காட்டப்பட்டுள்ள தள தலைப்புகளை மாற்றுகிறது.

WEBLATE_SITE_DOMAIN

தள களத்தை உள்ளமைக்கிறது. இந்த அளவுரு தேவை.

தரமற்ற ஒன்றைப் பயன்படுத்தினால் துறைமுகம் சேர்க்கவும்.

உதாரணமாக:

environment:
  WEBLATE_SITE_DOMAIN: example.com:8080
WEBLATE_ADMIN_NAME
WEBLATE_ADMIN_EMAIL

Configures the site-admin's name and e-mail. It is used for both ADMINS setting and creating admin user (see WEBLATE_ADMIN_PASSWORD for more info on that).

உதாரணமாக:

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

நிர்வாகி பயனருக்கான கடவுச்சொல்லை அமைக்கிறது.

  • அமைக்கவில்லை மற்றும் நிர்வாகி பயனர் இல்லை என்றால், இது முதல் கொள்கலன் தொடக்கத்தில் காட்டப்பட்டுள்ள சீரற்ற கடவுச்சொல்லுடன் உருவாக்கப்படுகிறது.

  • அமைக்கப்படாவிட்டால் மற்றும் நிர்வாகி பயனர் இருந்தால், எந்த நடவடிக்கையும் செய்யப்படவில்லை.

  • If set the admin user is adjusted on every container startup to match WEBLATE_ADMIN_PASSWORD, WEBLATE_ADMIN_NAME and WEBLATE_ADMIN_EMAIL.

Warning

கடவுச்சொல்லை உள்ளமைவு கோப்பில் சேமிப்பது பாதுகாப்பு அபாயமாக இருக்கலாம். ஆரம்ப அமைப்பிற்கு மட்டுமே இந்த மாறியைப் பயன்படுத்துவதைக் கவனியுங்கள் (அல்லது ஆரம்ப தொடக்கத்தில் வெம்ப்லேட் சீரற்ற கடவுச்சொல்லை உருவாக்க அனுமதிக்கட்டும்) அல்லது கடவுச்சொல் மீட்டெடுப்பிற்கு.

WEBLATE_ADMIN_NOTIFY_ERROR

சேவையக பிழையில் நிர்வாகிக்கு மின்னஞ்சல் அனுப்ப வேண்டுமா. இயல்பாக இயக்கப்பட்டது.

நீங்கள் சென்ட்ரி அல்லது ரோல்பார் போன்ற பிற பிழை சேகரிப்பைப் பயன்படுத்த விரும்பலாம், இதை அணைக்கலாம்.

WEBLATE_SERVER_EMAIL

பிழை செய்திகளிலிருந்து அனுப்பப்படும் மின்னஞ்சல் முகவரி.

WEBLATE_DEFAULT_FROM_EMAIL

வெளிச்செல்லும் மின்னஞ்சல்களுக்கான முகவரியை உள்ளமைக்கவும்.

WEBLATE_ADMINS_CONTACT

Configures ADMINS_CONTACT.

WEBLATE_CONTACT_FORM

Configures contact form behavior, see CONTACT_FORM.

WEBLATE_ALLOWED_HOSTS

Configures allowed HTTP hostnames using ALLOWED_HOSTS.

இயல்புநிலை * அனைத்து ஓச்ட்பெயர்களையும் அனுமதிக்கிறது.

உதாரணமாக:

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

Configures whether registrations are open by toggling REGISTRATION_OPEN.

உதாரணமாக:

environment:
  WEBLATE_REGISTRATION_OPEN: 0
WEBLATE_REGISTRATION_CAPTCHA

Added in version 5.10.

Configures whether captcha is used for registration and other unauthenticated actions, see REGISTRATION_CAPTCHA.

உதாரணமாக:

environment:
  WEBLATE_REGISTRATION_CAPTCHA: 0
WEBLATE_REGISTRATION_ALLOW_BACKENDS

Configure which authentication methods can be used to create new account via REGISTRATION_ALLOW_BACKENDS.

உதாரணமாக:

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

Added in version 4.16.

Configures REGISTRATION_REBIND.

WEBLATE_TIME_ZONE

Configures the used time zone in Weblate, see TIME_ZONE.

Note

To change the time zone of the Docker container itself, use the TZ environment variable.

உதாரணமாக:

environment:
  WEBLATE_TIME_ZONE: Europe/Prague
WEBLATE_ENABLE_HTTPS

இது ஒரு தலைகீழ் https ப்ராக்சிக்கு பின்னால் இயங்குகிறது என்று வலைபெயர்ப்பு கருதுகிறது, இது வலைபெயர்ப்பு மின்னஞ்சலில் https ஐப் பயன்படுத்துகிறது மற்றும் பநிஇ இணைப்புகள் அல்லது குக்கீகளில் பாதுகாப்பான கொடிகளை அமைக்கிறது.

Hint

Please see ENABLE_HTTPS documentation for possible caveats.

Note

This does not make the Weblate container accept HTTPS connections, you need to configure that as well, see https ஆதரவுடன் கப்பல்துறை கொள்கலன் for examples.

உதாரணமாக:

environment:
  WEBLATE_ENABLE_HTTPS: 1
WEBLATE_IP_PROXY_HEADER

கொடுக்கப்பட்ட எந்தவொரு http தலைப்பிலிருந்தும் ஐபி முகவரியைப் பெற வலைபெயர்ப்பு அனுமதிக்கிறது. வலைபெயர்ப்பு கொள்கலனுக்கு முன்னால் தலைகீழ் பதிலாளைப் பயன்படுத்தும் போது இதைப் பயன்படுத்து.

Enables IP_BEHIND_REVERSE_PROXY and sets IP_PROXY_HEADER.

Note

The format must conform to Django's expectations. Django transforms raw HTTP header names as follows:

  • எல்லா எழுத்துகளையும் பெரிய எழுத்தாளராக மாற்றுகிறது

  • எந்த ஐபன்களையும் அடிக்கோடிட்டுக் காட்டுகிறது

  • prepends HTTP_ prefix

So X-Forwarded-For would be mapped to HTTP_X_FORWARDED_FOR.

உதாரணமாக:

environment:
  WEBLATE_IP_PROXY_HEADER: HTTP_X_FORWARDED_FOR
WEBLATE_IP_PROXY_OFFSET

Added in version 5.0.1.

Configures IP_PROXY_OFFSET.

WEBLATE_USE_X_FORWARDED_PORT

Added in version 5.0.1.

A boolean that specifies whether to use the X-Forwarded-Port header in preference to the SERVER_PORT META variable. This should only be enabled if a proxy which sets this header is in use.

Note

This is a boolean setting (use "true" or "false").

WEBLATE_SECURE_PROXY_SSL_HEADER

ஒரு கோரிக்கையை குறிக்கும் http தலைப்பு/மதிப்பு கலவையை குறிக்கும் ஒரு டூப்பிள் பாதுகாப்பானது. நிலையான https தலைப்புகளை அனுப்பாத ssl முடித்தல் செய்யும் தலைகீழ் ப்ராக்சியின் பின்னால் வலைபெயர்ப்பு இயங்கும்போது இது தேவைப்படுகிறது.

உதாரணமாக:

environment:
  WEBLATE_SECURE_PROXY_SSL_HEADER: HTTP_X_FORWARDED_PROTO,https
WEBLATE_REQUIRE_LOGIN

Enables REQUIRE_LOGIN to enforce authentication on whole Weblate.

உதாரணமாக:

environment:
  WEBLATE_REQUIRE_LOGIN: 1
WEBLATE_GOOGLE_ANALYTICS_ID

Configures ID for Google Analytics by changing GOOGLE_ANALYTICS_ID.

WEBLATE_DEFAULT_PULL_MESSAGE

Configures the default title and message for pull requests via API by changing DEFAULT_PULL_MESSAGE.

WEBLATE_SIMPLIFY_LANGUAGES

Configures the language simplification policy, see SIMPLIFY_LANGUAGES.

WEBLATE_DEFAULT_ACCESS_CONTROL

Configures the default நுழைவு கட்டுப்பாடு for new projects, see DEFAULT_ACCESS_CONTROL.

WEBLATE_DEFAULT_RESTRICTED_COMPONENT

Configures the default value for தடைசெய்யப்பட்ட அணுகல் for new components, see DEFAULT_RESTRICTED_COMPONENT.

WEBLATE_DEFAULT_TRANSLATION_PROPAGATION

Configures the default value for மொழிபெயர்ப்பு பரப்புதலை அனுமதிக்கவும் for new components, see DEFAULT_TRANSLATION_PROPAGATION.

WEBLATE_DEFAULT_COMMITER_EMAIL

Configures DEFAULT_COMMITER_EMAIL.

WEBLATE_DEFAULT_COMMITER_NAME

Configures DEFAULT_COMMITER_NAME.

WEBLATE_DEFAULT_SHARED_TM

Configures DEFAULT_SHARED_TM.

WEBLATE_DEFAULT_AUTOCLEAN_TM

Configures DEFAULT_AUTOCLEAN_TM.

WEBLATE_GPG_IDENTITY

Configures GPG signing of commits, see WEBLATE_GPG_IDENTITY.

WEBLATE_URL_PREFIX

Configures URL prefix where Weblate is running, see URL_PREFIX.

WEBLATE_MEDIA_URL

Configures URL that handles the media served from MEDIA_ROOT.

WEBLATE_STATIC_URL

Configures URL prefix for static files server from CACHE_DIR.

WEBLATE_SILENCED_SYSTEM_CHECKS

Configures checks which you do not want to be displayed, see 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

Allows to customize Content-Security-Policy HTTP header.

WEBLATE_LICENSE_FILTER

Configures LICENSE_FILTER.

WEBLATE_LICENSE_REQUIRED

Configures LICENSE_REQUIRED.

WEBLATE_WEBSITE_REQUIRED

Configures WEBSITE_REQUIRED.

WEBLATE_HIDE_VERSION

Configures HIDE_VERSION.

WEBLATE_BASIC_LANGUAGES

Configures BASIC_LANGUAGES.

WEBLATE_DEFAULT_AUTO_WATCH

Configures DEFAULT_AUTO_WATCH.

WEBLATE_RATELIMIT_ATTEMPTS
WEBLATE_RATELIMIT_LOCKOUT
WEBLATE_RATELIMIT_WINDOW

Added in version 4.6.

வீத வரம்பை உள்ளமைக்கிறது.

Hint

You can set configuration for any rate limiter scopes. To do that add WEBLATE_ prefix to any of setting described in வீதத்தைக் கட்டுப்படுத்துதல்.

WEBLATE_API_RATELIMIT_ANON
WEBLATE_API_RATELIMIT_USER

Added in version 4.11.

Configures API rate limiting. Defaults to 100/day for anonymous and 5000/hour for authenticated users.

WEBLATE_ENABLE_HOOKS

Added in version 4.13.

Configures ENABLE_HOOKS.

WEBLATE_ENABLE_AVATARS

Added in version 4.6.1.

Configures ENABLE_AVATARS.

WEBLATE_AVATAR_URL_PREFIX

Added in version 4.15.

Configures AVATAR_URL_PREFIX.

WEBLATE_LIMIT_TRANSLATION_LENGTH_BY_SOURCE_LENGTH

Added in version 4.9.

Configures LIMIT_TRANSLATION_LENGTH_BY_SOURCE_LENGTH.

WEBLATE_SSH_EXTRA_ARGS

Added in version 4.9.

Configures SSH_EXTRA_ARGS.

WEBLATE_BORG_EXTRA_ARGS

Added in version 4.9.

Configures BORG_EXTRA_ARGS as a comma separated list of args.

உதாரணமாக:

environment:
  WEBLATE_BORG_EXTRA_ARGS: --exclude,vcs/
WEBLATE_ENABLE_SHARING

Added in version 4.14.1.

Configures ENABLE_SHARING.

WEBLATE_SUPPORT_STATUS_CHECK

Added in version 5.5.

Configures SUPPORT_STATUS_CHECK.

WEBLATE_EXTRA_HTML_HEAD

Added in version 4.15.

Configures EXTRA_HTML_HEAD.

WEBLATE_PRIVATE_COMMIT_EMAIL_TEMPLATE

Added in version 4.15.

Configures PRIVATE_COMMIT_EMAIL_TEMPLATE.

WEBLATE_PRIVATE_COMMIT_EMAIL_OPT_IN

Added in version 4.15.

Configures PRIVATE_COMMIT_EMAIL_OPT_IN.

WEBLATE_UNUSED_ALERT_DAYS

Added in version 4.17.

Configures UNUSED_ALERT_DAYS.

WEBLATE_UPDATE_LANGUAGES

Added in version 4.3.2.

Configures UPDATE_LANGUAGES.

WEBLATE_VCS_ALLOW_HOSTS

Added in version 5.15.

Configures VCS_ALLOW_HOSTS.

WEBLATE_VCS_ALLOW_SCHEMES

Added in version 5.15.

Configures VCS_ALLOW_SCHEMES.

WEBLATE_VCS_CLONE_DEPTH

Added in version 5.4.

Configures VCS_CLONE_DEPTH.

WEBLATE_VCS_API_DELAY

Added in version 5.4.

Configures VCS_API_DELAY.

WEBLATE_VCS_API_TIMEOUT

Added in version 5.15.

Configures VCS_API_TIMEOUT.

WEBLATE_CORS_ALLOWED_ORIGINS

Added in version 4.16.

கொடுக்கப்பட்ட தோற்றத்திலிருந்து பநிஇ க்கு CORS கோரிக்கைகளை அனுமதிக்கவும்.

உதாரணமாக:

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

Added in version 5.6.1: அனைத்து தோற்றங்களிலிருந்தும் பநிஇ க்கு CORS கோரிக்கைகளை அனுமதிக்கிறது.

CLIENT_MAX_BODY_SIZE

Added in version 4.16.3.

உள்ளமைக்கப்பட்ட வலை சேவையகத்தால் ஏற்றுக்கொள்ளப்பட்ட அதிகபட்ச உடல் அளவை உள்ளமைக்கவும்.

environment:
    CLIENT_MAX_BODY_SIZE: 200m

குறியீடு ஓச்டிங் தளங்களின் சான்றுகள்

கப்பல்துறை கொள்கலனில், குறியீடு ஓச்டிங் நற்சான்றிதழ்களை தனித்தனி மாறிகள் அல்லது பைதான் அகராதியைப் பயன்படுத்தி அவற்றை ஒரே நேரத்தில் அமைக்கலாம். பின்வரும் எடுத்துக்காட்டுகள் அறிவிலிமையம் கோரிக்கைகள், ஆனால் அனைவருக்கும் பொருந்தும் பதிப்பு கட்டுப்பாட்டு ஒருங்கிணைப்பு சரியான முறையில் மாற்றப்பட்ட மாறி பெயர்களுடன்.

Important

All environment variable names must include the WEBLATE_ prefix. For example, to configure GitHub credentials, use WEBLATE_GITHUB_USERNAME, not GITHUB_USERNAME. This applies whether you're configuring for pull requests or any other VCS integration.

An example configuration for GitHub pull requests might look like:

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

இவ்வாறு பயன்படுத்தப்படும்:

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

மாற்றாக பைதான் அகராதியை ஒரு சரமாக வழங்க முடியும்:

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

அல்லது பைதான் அகராதி கொண்ட கோப்பிற்கான பாதை:

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

Configures அறிவிலிமையம் கோரிக்கைகள் by changing GITHUB_CREDENTIALS.

WEBLATE_GITLAB_USERNAME
WEBLATE_GITLAB_TOKEN
WEBLATE_GITLAB_HOST
WEBLATE_GITLAB_CREDENTIALS

Configures அறிவிலிஆய்வு கோரிக்கைகளை ஒன்றிணைக்கவும் by changing GITLAB_CREDENTIALS.

WEBLATE_GITEA_USERNAME
WEBLATE_GITEA_TOKEN
WEBLATE_GITEA_HOST
WEBLATE_GITEA_CREDENTIALS

Configures கிடியா இழுக்கும் கோரிக்கைகள் by changing GITEA_CREDENTIALS.

WEBLATE_PAGURE_USERNAME
WEBLATE_PAGURE_TOKEN
WEBLATE_PAGURE_HOST
WEBLATE_PAGURE_CREDENTIALS

Configures pagure ஒன்றிணைப்பு கோரிக்கைகள் by changing PAGURE_CREDENTIALS.

WEBLATE_BITBUCKETSERVER_USERNAME
WEBLATE_BITBUCKETSERVER_TOKEN
WEBLATE_BITBUCKETSERVER_HOST
WEBLATE_BITBUCKETSERVER_CREDENTIALS

Configures பிட்பக்கெட் தரவு நடுவண் கோரிக்கைகளை இழுக்கவும் by changing BITBUCKETSERVER_CREDENTIALS.

WEBLATE_BITBUCKETCLOUD_USERNAME
WEBLATE_BITBUCKETCLOUD_WORKSPACE
WEBLATE_BITBUCKETCLOUD_TOKEN
WEBLATE_BITBUCKETCLOUD_HOST
WEBLATE_BITBUCKETCLOUD_CREDENTIALS

Configures பிட்பக்கெட் முகில் புல் கோரிக்கைகள் by changing BITBUCKETCLOUD_CREDENTIALS.

WEBLATE_AZURE_DEVOPS_USERNAME
WEBLATE_AZURE_DEVOPS_ORGANIZATION
WEBLATE_AZURE_DEVOPS_TOKEN
WEBLATE_AZURE_DEVOPS_HOST
WEBLATE_AZURE_DEVOPS_CREDENTIALS

Configures அசூர் டெவொப்ச் கோரிக்கைகளை இழுக்கிறது by changing AZURE_DEVOPS_CREDENTIALS.

தானியங்கி பரிந்துரை அமைப்புகள்

Changed in version 4.13: Automatic suggestion services are now configured in the user interface, see தானியங்கி பரிந்துரைகள்.

தற்போதுள்ள சுற்றுச்சூழல் மாறிகள் இடம்பெயர்வின் போது வலைபெயர்ப்பு 4.13 க்கு இறக்குமதி செய்யப்படுகின்றன, ஆனால் அவற்றை மாற்றுவது மேலும் விளைவை ஏற்படுத்தாது.

அங்கீகார அமைப்புகள்

Hint

The e-mail based authentication is turned on unless disabled by 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

ldap அங்கீகார உள்ளமைவு.

Example for direct bind:

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

Example for search and bind:

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

Example for union search and bind:

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

Example with search and bind against 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)

கிதப்

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

செயல்படுத்துகிறது அறிவிலிமையம் ஏற்பு.

அறிவிலிமையம் நிறுவன பதிப்பு

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

செயல்படுத்துகிறது github ee ஏற்பு.

பிட்பக்கெட்

WEBLATE_SOCIAL_AUTH_BITBUCKET_OAUTH2_KEY
WEBLATE_SOCIAL_AUTH_BITBUCKET_OAUTH2_SECRET

Enables பிட்பக்கெட் ஏற்பு.

முகநூல்

WEBLATE_SOCIAL_AUTH_FACEBOOK_KEY
WEBLATE_SOCIAL_AUTH_FACEBOOK_SECRET

செயல்படுத்துகிறது பேச்புக் ஓத் 2.

கூகிள்

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

Enables கூகிள் oauth 2.

அறிவிலிஆய்வு

WEBLATE_SOCIAL_AUTH_GITLAB_KEY
WEBLATE_SOCIAL_AUTH_GITLAB_SECRET
WEBLATE_SOCIAL_AUTH_GITLAB_API_URL

செயல்படுத்துகிறது அறிவிலிஆய்வு oauth 2.

அறிவிலிதேநீர்

WEBLATE_SOCIAL_AUTH_GITEA_API_URL
WEBLATE_SOCIAL_AUTH_GITEA_KEY
WEBLATE_SOCIAL_AUTH_GITEA_SECRET

அறிவிலிதேநீர் அங்கீகாரத்தை செயல்படுத்துகிறது.

அசூர் செயலில் உள்ள அடைவு

WEBLATE_SOCIAL_AUTH_AZUREAD_OAUTH2_KEY
WEBLATE_SOCIAL_AUTH_AZUREAD_OAUTH2_SECRET

Enables Azure Active Directory authentication, see நுண்மென் அசூர் ஆக்டிவ் டைரக்டரி.

குத்தகைதாரர் ஆதரவுடன் அசூர் செயலில் உள்ள அடைவு

WEBLATE_SOCIAL_AUTH_AZUREAD_TENANT_OAUTH2_KEY
WEBLATE_SOCIAL_AUTH_AZUREAD_TENANT_OAUTH2_SECRET
WEBLATE_SOCIAL_AUTH_AZUREAD_TENANT_OAUTH2_TENANT_ID

Enables Azure Active Directory authentication with Tenant support, see நுண்மென் அசூர் ஆக்டிவ் டைரக்டரி.

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

Enables Keycloak authentication, see Keycloak - Open Source Red Hat SSO.

Hint

When Keycloak is configured to abstract third-party IDP, you will need to configure WEBLATE_CSP_FORM_SRC for the third-party IDP domain.

Example when Keycloak is passing authentication to Microsoft.
environment:
  WEBLATE_CSP_FORM_SRC: login.microsoftonline.com

லினக்ச் விற்பனையாளர்கள்

எந்தவொரு மதிப்புக்கும் பின்வரும் மாறிகளை அமைப்பதன் மூலம் லினக்ச் விற்பனையாளர்களின் அங்கீகார சேவைகளைப் பயன்படுத்தி அங்கீகாரத்தை இயக்கலாம்.

WEBLATE_SOCIAL_AUTH_FEDORA
WEBLATE_SOCIAL_AUTH_OPENSUSE
WEBLATE_SOCIAL_AUTH_OPENINFRA
WEBLATE_SOCIAL_AUTH_UBUNTU

மந்தமான

WEBLATE_SOCIAL_AUTH_SLACK_KEY
SOCIAL_AUTH_SLACK_SECRET

மந்தமான அங்கீகாரத்தை செயல்படுத்துகிறது, காண்க மந்தமான.

ஓபன்ஐடி இணைப்பு

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

பொதுவான ஓபன்ஐடி இணைப்பு ஒருங்கிணைப்பை உள்ளமைக்கிறது.

Fedora OpenID Connect

Added in version 5.15.

WEBLATE_SOCIAL_AUTH_FEDORA_OIDC_KEY
WEBLATE_SOCIAL_AUTH_FEDORA_OIDC_SECRET

Configures Fedora OpenID Connect integration.

See also

Fedora

சாம்ல்

Self-signed SAML keys are automatically generated on first container startup. In case you want to use own keys, place the certificate and private key in /app/data/ssl/saml.crt and /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 அடையாள வழங்குநர் அமைப்புகள், காண்க saml ஏற்பு.

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.

saml வரைபடத்தை பண்புக்கூறு.

பிற அங்கீகார அமைப்புகள்

WEBLATE_NO_EMAIL_AUTH

Disables e-mail authentication when set to any value. See கடவுச்சொல் அங்கீகாரத்தை முடக்கு.

WEBLATE_MIN_PASSWORD_SCORE

Minimal password score as evaluated by the zxcvbn password strength estimator. Defaults to 3, set to 0 to disable strength checking.

postgresql தரவுத்தள அமைப்பு

The database is created by docker-compose.yml, so these settings affect both Weblate and PostgreSQL containers.

POSTGRES_PASSWORD

postgresql கடவுச்சொல்.

POSTGRES_USER

postgresql பயனர்பெயர்.

POSTGRES_DB

postgresql தரவுத்தள பெயர்.

POSTGRES_HOST

PostgreSQL server hostname or IP address. Defaults to database.

POSTGRES_PORT

postgresql சர்வர் துறைமுகம். இயல்புநிலை எதுவுமில்லை (இயல்புநிலை மதிப்பைப் பயன்படுத்துகிறது).

POSTGRES_SSL_MODE

Configure how PostgreSQL handles SSL in connection to the server, for possible choices see SSL Mode Descriptions.

POSTGRES_ALTER_ROLE

தரவுத்தள இடம்பெயர்வின் போது மாற்ற போச்ட்கிரெச்.கியூ.எல் பாத்திரத்தின் பெயரை உள்ளமைக்கிறது, காண்க போச்ட்கிரெச்க்யூல் பயன்படுத்த வலைபெயர்ப்பு கட்டமைத்தல்.

Defaults to POSTGRES_USER.

POSTGRES_CONN_MAX_AGE

Added in version 4.8.1.

தரவுத்தள இணைப்பின் வாழ்நாள், விநாடிகளின் முழு எண்ணாக. ஒவ்வொரு கோரிக்கையின் முடிவிலும் தரவுத்தள இணைப்புகளை மூட 0 ஐப் பயன்படுத்து.

Changed in version 5.1: இயல்புநிலை நடத்தை வரம்பற்ற தொடர்ச்சியான தரவுத்தள இணைப்புகளைக் கொண்டிருக்க வேண்டும்.

இணைப்பு விடாமுயற்சியை செயல்படுத்துவது பொதுவாக, தரவுத்தளத்திற்கு மேலும் திறந்த இணைப்பை ஏற்படுத்தும். உங்கள் தரவுத்தள உள்ளமைவை செயல்படுத்துவதற்கு முன் சரிசெய்யவும்.

எடுத்துக்காட்டு உள்ளமைவு:

environment:
    POSTGRES_CONN_MAX_AGE: 3600
POSTGRES_DISABLE_SERVER_SIDE_CURSORS

Added in version 4.9.1.

Disable server side cursors in the database. This is necessary in some pgbouncer setups.

எடுத்துக்காட்டு உள்ளமைவு:

environment:
    POSTGRES_DISABLE_SERVER_SIDE_CURSORS: 1
WEBLATE_DATABASES

Added in version 5.1.

Set to false to disables environment based configuration of the database connection. Use தரவு அளவிலிருந்து அமைப்புகளை மீறுதல் to configure the database connection manually.

mysql அல்லது மரியாடிபி சேவையகம்

Neither MySQL nor MariaDB can not be configured via environment variables. See mysql மற்றும் மரியாடிபி for info on using those with Weblate. Use WEBLATE_DATABASES to configure the database connection manually.

தரவுத்தள காப்புப்பிரதி அமைப்புகள்

WEBLATE_DATABASE_BACKUP

Configures the daily database dump using DATABASE_BACKUP. Defaults to plain.

Datastore server setup

Using Valkey or Redis is required by the Weblate container and you have to provide a connection parameters when running Weblate in Docker.

See also

Configure cache

REDIS_HOST

The datastore server hostname or IP address. Defaults to cache.

REDIS_PORT

The datastore server port. Defaults to 6379.

REDIS_DB

The datastore database number, defaults to 1.

REDIS_USER

Added in version 5.13: The datastore database user, not used by default.

REDIS_PASSWORD

The datastore server password, not used by default.

REDIS_TLS

Enables using SSL for the datastore connection.

REDIS_VERIFY_SSL

Can be used to disable SSL certificate verification for the datastore connection.

மின்னஞ்சல் சேவையக அமைப்பு

வெளிச்செல்லும் மின்னஞ்சல் வேலைகளைச் செய்ய, நீங்கள் ஒரு அஞ்சல் சேவையகத்தை வழங்க வேண்டும்.

எடுத்துக்காட்டு tls உள்ளமைவு:

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

எடுத்துக்காட்டு 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

அஞ்சல் சேவையக ஓச்ட்பெயர் அல்லது ஐபி முகவரி.

WEBLATE_EMAIL_PORT

அஞ்சல் சேவையக துறைமுகம், இயல்புநிலை 25 க்கு.

See also

EMAIL_PORT

WEBLATE_EMAIL_HOST_USER

மின்னஞ்சல் அங்கீகார பயனர்.

See also

EMAIL_HOST_USER

WEBLATE_EMAIL_HOST_PASSWORD

மின்னஞ்சல் அங்கீகார கடவுச்சொல்.

WEBLATE_EMAIL_USE_SSL

Whether to use an implicit TLS (secure) connection when talking to the SMTP server. In most e-mail documentation, this type of TLS connection is referred to as SSL. It is generally used on port 465. If you are experiencing problems, see the explicit TLS setting WEBLATE_EMAIL_USE_TLS.

Changed in version 4.11: The SSL/TLS support is automatically enabled based on the WEBLATE_EMAIL_PORT.

WEBLATE_EMAIL_USE_TLS

Whether to use a TLS (secure) connection when talking to the SMTP server. This is used for explicit TLS connections, generally on port 587 or 25. If you are experiencing connections that hang, see the implicit TLS setting WEBLATE_EMAIL_USE_SSL.

Changed in version 4.11: The SSL/TLS support is automatically enabled based on the WEBLATE_EMAIL_PORT.

WEBLATE_EMAIL_BACKEND

மின்னஞ்சல்களை அனுப்புவதற்கு சாங்கோ பின்தளத்தில் உள்ளமைக்கவும்.

WEBLATE_AUTO_UPDATE

வலைபெயர்ப்பு களஞ்சியங்களை புதுப்பிக்க வேண்டும் என்றால், எப்படி.

See also

AUTO_UPDATE

Note

This is a Boolean setting (use "true" or "false").

தள ஒருங்கிணைப்பு

WEBLATE_GET_HELP_URL

Configures GET_HELP_URL.

WEBLATE_STATUS_URL

Configures STATUS_URL.

Configures LEGAL_URL.

WEBLATE_PRIVACY_URL

Configures PRIVACY_URL.

பிழை அறிக்கைகளை சேகரித்தல் மற்றும் செயல்திறனைக் கண்காணித்தல்

It is recommended to collect errors from the installation systematically, see பிழை அறிக்கைகளை சேகரித்தல் மற்றும் செயல்திறனைக் கண்காணித்தல்.

ரோல்பாருக்கான ஆதரவை இயக்க, பின்வருவனவற்றை அமைக்கவும்:

ROLLBAR_KEY

உங்கள் ரோல்பார் இடுகை சேவையக அணுகல் கிள்ளாக்கு.

ROLLBAR_ENVIRONMENT

Your Rollbar environment, defaults to production.

சென்ட்ரிக்கு ஆதரவை இயக்க, பின்வருமாறு அமைக்கவும்:

SENTRY_DSN

Your Sentry DSN, see SENTRY_DSN.

SENTRY_ENVIRONMENT

Your Sentry Environment (optional), defaults to WEBLATE_SITE_DOMAIN.

SENTRY_MONITOR_BEAT_TASKS

Whether to monitor Celery Beat tasks with Sentry, defaults to True.

SENTRY_TRACES_SAMPLE_RATE

Configures SENTRY_TRACES_SAMPLE_RATE.

உதாரணமாக:

environment:
  SENTRY_TRACES_SAMPLE_RATE: 0.5
SENTRY_PROFILES_SAMPLE_RATE

Configures SENTRY_PROFILES_SAMPLE_RATE.

உதாரணமாக:

environment:
  SENTRY_PROFILES_SAMPLE_RATE: 0.5
SENTRY_SEND_PII

Configures SENTRY_SEND_PII.

உள்ளூராக்கல் சி.டி.என்

WEBLATE_LOCALIZE_CDN_URL
WEBLATE_LOCALIZE_CDN_PATH

Added in version 4.2.1.

இதற்கான உள்ளமைவு சாவாச்கிரிப்ட் உள்ளூராக்கல் சி.டி.என்.

The WEBLATE_LOCALIZE_CDN_PATH is path within the container. It should be stored on the persistent volume and not in the transient storage.

வலைபெயர்ப்பு டேட்டா டிர் உள்ளே சேமித்து வைப்பது சாத்தியக்கூறுகளில் ஒன்று:

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

Note

வலைபெயர்ப்பு உருவாக்கிய கோப்புகளின் சேவையை அமைப்பதற்கு நீங்கள் பொறுப்பு, இது கோப்புகளை உள்ளமைக்கப்பட்ட இடத்தில் மட்டுமே சேமிக்கிறது.

இயக்கப்பட்ட பயன்பாடுகள், காசோலைகள், துணை நிரல்கள், இயந்திர மொழிபெயர்ப்பு அல்லது ஆட்டோஃபிக்சை மாற்றுதல்

இயக்கப்பட்ட சோதனைகள், துணை நிரல்கள் அல்லது தானிஃபிக்சின் உள்ளமைக்கப்பட்ட உள்ளமைவை பின்வரும் மாறிகள் மூலம் சரிசெய்யலாம்:

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.

உதாரணமாக:

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

கொள்கலன் அமைப்புகள்

WEBLATE_WORKERS

Added in version 4.6.1.

கொள்கலனில் இயங்கும் தொழிலாளர் செயல்முறைகளின் அடிப்படை எண்ணிக்கை. அமைக்கப்படாதபோது, கிடைக்கக்கூடிய சிபியு கோர்களின் எண்ணிக்கையின் அடிப்படையில் கொள்கலன் தொடக்கத்தில் தானாகவே தீர்மானிக்கப்படுகிறது.

It is used to determine CELERY_MAIN_OPTIONS, CELERY_NOTIFY_OPTIONS, CELERY_MEMORY_OPTIONS, CELERY_TRANSLATE_OPTIONS, CELERY_BACKUP_OPTIONS, CELERY_BEAT_OPTIONS, and WEB_WORKERS. You can use these settings to fine-tune.

CELERY_MAIN_OPTIONS
CELERY_NOTIFY_OPTIONS
CELERY_MEMORY_OPTIONS
CELERY_TRANSLATE_OPTIONS
CELERY_BACKUP_OPTIONS
CELERY_BEAT_OPTIONS

இந்த மாறிகள் செலரி தொழிலாளர் விருப்பங்களை சரிசெய்ய உங்களை அனுமதிக்கின்றன. ஒத்திசைவை சரிசெய்ய (--ஒத்திசைவு 16) அல்லது வெவ்வேறு பூல் செயல்படுத்தலைப் பயன்படுத்துவது பயனுள்ளதாக இருக்கும் (--பூல் = சென்ட்).

By default, the number of concurrent workers is based on WEBLATE_WORKERS.

உதாரணமாக:

environment:
  CELERY_MAIN_OPTIONS: --concurrency 16
CELERY_SINGLE_PROCESS

Added in version 5.7.1: This variable can be set to 1 to run only one celery process. This reduces memory usage but may impact Weblate performance.

environment:
  CELERY_SINGLE_PROCESS: 1
WEB_WORKERS

எத்தனை WSGI தொழிலாளர்கள் செயல்படுத்தப்பட வேண்டும் என்பதை உள்ளமைக்கவும்.

It defaults to half of WEBLATE_WORKERS, but is always at least 2.

உதாரணமாக:

environment:
  WEB_WORKERS: 4

Changed in version 5.13: WEB_WORKERS configures how many worker processes will used by granian.

WEBLATE_SERVICE

Defines which services should be executed inside the container. Use this for கிடைமட்டமாக அளவிடுதல்.

பின்வரும் சேவைகள் வரையறுக்கப்பட்டுள்ளன:

celery-beat

செலரி பணி திட்டமிடல், ஒரு நிகழ்வு மட்டுமே இயங்க வேண்டும். தரவுத்தள கட்டமைப்பு இடம்பெயர்வுகளுக்கும் இந்த கொள்கலன் பொறுப்பாகும், மேலும் இது மற்றவர்களுக்கு முன் தொடங்கப்பட வேண்டும்.

celery-backup

காப்புப்பிரதிகளுக்கான செலரி தொழிலாளி, ஒரு நிகழ்வு மட்டுமே இயங்க வேண்டும்.

celery-celery

பொதுவான செலரி தொழிலாளி.

celery-memory

மொழிபெயர்ப்பு நினைவகம் செலரி தொழிலாளி.

celery-notify

அறிவிப்புகள் செலரி தொழிலாளி.

celery-translate

தானியங்கி மொழிபெயர்ப்பு செலரி தொழிலாளி.

web

வலை சேவையகம்.

WEBLATE_ANUBIS_URL

Added in version 5.11.4.

URL of Anubis server to handle subrequest authentication. This can be useful to filter incoming HTTP requests using proof-of-work to stop AI crawlers. You need to configure Anubis for Subrequest Authentication to make it work.

கப்பல்துறை கொள்கலன் தொகுதிகள்

There are two volumes (data and cache) exported by the Weblate container.

Note

The other service containers (such as PostgreSQL or Valkey) have their data volumes as well and are required to maintain Weblate persistence.

The PostgreSQL container stores the database in the /var/lib/postgresql volume and Valkey in the /data volume. Valkey container does not save the data by default and needs additional configuration to enable persistence.

Base your configuration on Weblate-provided examples or consult their documentation for more information.

data தொகுதி இவ்வாறு பொருத்தப்பட்டுள்ளது: கோப்பு /app/data மற்றும் நகலி செய்யப்பட்ட களஞ்சியங்கள் போன்ற வலைபெயர்ப்பு தொடர்ச்சியான தரவுகளைச் சேமிக்க அல்லது வலைபெயர்ப்பு நிறுவலைத் தனிப்பயனாக்க பயன்படுகிறது. DATA_DIR இங்கே சேமிக்கப்படுவதை இன்னும் விரிவாக விவரிக்கிறது.

The data volume is also place to store Weblate customization such as தரவு அளவிலிருந்து அமைப்புகளை மீறுதல், லோகோ மற்றும் பிற நிலையான கோப்புகளை மாற்றுகிறது or Customizing code.

The placement of the Docker volume on host system depends on your Docker configuration, but usually it is stored in /var/lib/docker/volumes/weblate-docker_weblate-data/_data/ (the path consist of name of your docker-compose directory, container, and volume names).

The cache volume is mounted as /app/cache and is used to store static files and CACHE_DIR. Its content is recreated on container startup and the volume can be mounted using ephemeral filesystem such as tmpfs.

தொகுதிகளை கைமுறையாக உருவாக்கும்போது, கோப்பகங்களுக்குள் பயன்படுத்தப்படும் பயனர் என்பதால் கோப்பகங்கள் uid 1000 க்கு சொந்தமானதாக இருக்க வேண்டும்.

Weblate container can also be executed with a read-only root file system. In this case, two additional tmpfs volumes should be mounted: /tmp and /run.

படிக்க மட்டும் ரூட் கோப்பு முறைமை

Added in version 4.18.

When running the container with a read-only root filesystem, two additional tmpfs volumes are required - /tmp and /run.

சுற்றுச்சூழல் மாறிகளுக்கு அப்பால் உள்ளமைவு

Docker environment variables are intended to expose most configuration settings of relevance for Weblate installations.

If you find a setting that is not exposed as an environment variable, and you believe that it should be, feel free to ask for it to be exposed in a future version of Weblate.

If you need to modify a setting that is not exposed as a Docker environment variable, you can still do so, either from the data volume or extending the Docker image.

தரவு அளவிலிருந்து அமைப்புகளை மீறுதல்

You can create a file at /app/data/settings-override.py, i.e. at the root of the data volume, to extend or override settings defined through environment variables.

கப்பல்துறை படத்தை நீட்டிப்பதன் மூலம் அமைப்புகளை மீறுதல்

தரவு தொகுதிக்கு பதிலாக கப்பல்துறை பட மட்டத்தில் அமைப்புகளை மேலெழுத:

  1. Create a custom Python package.

  2. Add a module to your package that imports all settings from weblate.settings_docker.

    For example, within the example package structure defined at பைதான் தொகுதியை உருவாக்குதல், you could create a file at weblate_customization/weblate_customization/settings.py with the following initial code:

    from weblate.settings_docker import *
    
  3. Create a custom Dockerfile that inherits from the official Weblate Docker image, and then installs your package and points the DJANGO_SETTINGS_MODULE environment variable to your settings module:

    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. Instead of using the official Weblate Docker image, build a custom image from this Dockerfile file.

    docker-compose.override.yml உடன் இதைச் செய்ய தூய்மையான வழி இல்லை. அந்தக் கோப்பில் உள்ள வலைபெயர்ப்பு முனையில் நீங்கள் கட்டியெழுப்ப:. ஐச் சேர்க்கலாம், ஆனால் உங்கள் தனிப்பயன் படம் உங்கள் கணினியில் வலைபெயர்ப்பு/வலைபெயர்ப்பு எனக் குறிக்கப்படும், இது சிக்கலாக இருக்கலாம்.

    So, instead of using the docker-compose.yml straight from the official repository, unmodified, and extending it through docker-compose.override.yml, you may want to make a copy of the official docker-compose.yml file, and edit your copy to replace image: weblate/weblate with build: ..

    See the Compose file build reference for details on building images from source when using docker-compose.

  5. அமைப்புகளை வரையறுக்க அல்லது மறுவரையறை செய்ய உங்கள் தனிப்பயன் அமைப்புகள் தொகுதியை நீட்டிக்கவும்.

    மேலே உள்ள இறக்குமதி அறிக்கைக்கு முன்னும் பின்னும் அமைப்புகளை நீங்கள் வரையறுக்கலாம், எந்த அமைப்புகள் முன்னுரிமை பெறுகின்றன என்பதை தீர்மானிக்க. இறக்குமதி அறிக்கைக்கு முன் வரையறுக்கப்பட்ட அமைப்புகள் சுற்றுச்சூழல் மாறிகள் மற்றும் தரவு அளவில் வரையறுக்கப்பட்ட அமைப்பால் மேலெழுதப்படலாம். இறக்குமதி அறிக்கைக்குப் பிறகு வரையறுக்கப்பட்ட அமைப்பை மீற முடியாது.

    You can also go further. For example, you can reproduce some of the things that weblate.docker_settings does, such as exposing settings as environment variables, or allow overriding settings from Python files in the data volume.

லோகோ மற்றும் பிற நிலையான கோப்புகளை மாற்றுகிறது

The static files coming with Weblate can be overridden by placing into /app/data/python/customize/static (see கப்பல்துறை கொள்கலன் தொகுதிகள்). For example creating /app/data/python/customize/static/favicon.ico will replace the favicon.

Hint

கோப்புகள் கொள்கலன் தொடக்கத்தில் தொடர்புடைய இருப்பிடத்திற்கு நகலெடுக்கப்படுகின்றன, எனவே தொகுதியின் உள்ளடக்கத்தை மாற்றிய பின் வலைபெயர்ப்புடின் மறுதொடக்கம் தேவைப்படுகிறது.

This approach can be also used to override Weblate templates. For example சட்ட தொகுதி documents can be placed into /app/data/python/customize/templates/legal/documents.

Alternatively you can also include own module (see வலைபெயர்ப்பு தனிப்பயனாக்குதல்) and add it as separate volume to the Docker container, for example:

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

Customizing code

Note

The internal Weblate API may vary significantly between releases and is not meant to be stable. Please review your custom code interacting with Weblate internals on each upgrade.

You can place additional Python code into /app/data/python/customize (see கப்பல்துறை கொள்கலன் தொகுதிகள்). It is already installed as a Django application inside Weblate (this is used for customizing templates and static files as described above).

This can be used to place any code (for example சொந்த சோதனைகளை எழுதுதல்) or to add custom maintenance tasks to the Celery task scheduler.

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

import subprocess

from celery.schedules import crontab

from weblate.utils.celery import app


@app.task
def custom_task() -> None:
    """Execute custom task code."""
    subprocess.run(["sleep", "1"], check=True)


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

Integrating third-party containers

The Weblate Docker setup can be extended with additional containers to provide complementary services such as machine translation, spell checking, or other tools that enhance the translation workflow. These services can be integrated into your Docker Compose configuration and work alongside Weblate.

When adding third-party containers, consider the following:

  • Network connectivity: Ensure containers can communicate with each other by placing them on the same Docker network

  • Data persistence: Use volumes for services that need to persist data

  • Security: Configure appropriate access controls and avoid exposing unnecessary ports

LibreTranslate Docker container integration

LibreTranslate is a free and open-source machine translation service that can be self-hosted. Integrating it with Weblate provides offline machine translation capabilities without relying on external services.

You can incorporate the LibreTranslate service into your Weblate deployment by including it in a docker-compose.override.yml file. Since it runs within the Docker network, it's only accessible to Weblate and not exposed to the public internet.

Basic setup using 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:

For GPU-accelerated translation (if you have NVIDIA GPU available):

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:

After starting the services with docker compose down && docker compose up -d, configure LibreTranslate in Weblate:

  1. Access the Weblate admin interface

  2. Navigate to Machine translationAutomatic suggestions

  3. Add a new LibreTranslate service with:

    சேவை:

    லிப்ரெட்ரான்ச்லேட்

    பநிஇ முகவரி:

    http://libretranslate:5000

    பநிஇ விசை:

    Leave empty

LibreTranslate is now configured and available for machine translation in Weblate.

Note

  • The LibreTranslate service runs without the web UI (--disable-web-ui) and is only accessible via the API within the Docker network.

  • Models are automatically updated when the container starts. (LT_UPDATE_MODELS: true)

  • Data is persisted using Docker volumes for optimal performance and data safety.

  • Health checks ensure that the Docker engine properly observes the state of the service.

  • For GPU acceleration, use the CUDA image variant and ensure your system has NVIDIA Docker support. This container runs as a privileged user to be able to use the GPU.

  • No external ports are exposed, making the setup secure by default.

Anubis Docker container integration

Anubis is a web AI firewall utility to block AI scrapers and other disruptive traffic on the server. It is typically needed for publicly open Weblate installations to avoid excessive load caused by scraping.

Anubis can be deployed using 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:

Note

The anubis-data volume in the above configuration is expected to contain botPolicies.yaml with a bot policy configured to your needs.

At minimum, you need to adjust status codes as described in https://anubis.techaro.lol/docs/admin/configuration/subrequest-auth.

It is also recommended to configure persistent storage backend as described in https://anubis.techaro.lol/docs/admin/policies/#storage-backends.

நீங்கள் அனுபிச் பயன்பாட்டை வலைபெயர்ப்பு பயன்படுத்தி இயக்கலாம்:

environment:
   WEBLATE_ANUBIS_URL: http://anubis:8923

postgresql சேவையகத்தை உள்ளமைத்தல்

postgresql கொள்கலன் இயல்புநிலை postgresql உள்ளமைவைப் பயன்படுத்துகிறது, மேலும் இது உங்கள் சிபியு கோர்கள் அல்லது நினைவகத்தை திறம்பட பயன்படுத்தாது. செயல்திறனை மேம்படுத்த உள்ளமைவைத் தனிப்பயனாக்க பரிந்துரைக்கப்படுகிறது.

https://hub.docker.com/_/postgres இல் தரவுத்தள உள்ளமைவு இல் விவரிக்கப்பட்டுள்ளபடி உள்ளமைவை சரிசெய்யலாம். உங்கள் சூழலுடன் பொருந்தக்கூடிய உள்ளமைவை https://pgtune.leopard.in.ua/ ஐப் பயன்படுத்தி உருவாக்கலாம்.

கொள்கலன் இன்டர்னல்கள்

The container is using supervisor to start individual services. In case of கிடைமட்டமாக அளவிடுதல், it only starts single service in a container.

சேவைகள் நிலை பயன்பாட்டை சரிபார்க்க:

docker compose exec --user weblate weblate supervisorctl status

There are individual services for each Celery queue (see செலரியைப் பயன்படுத்தி பின்னணி பணிகள் for details). You can stop processing some tasks by stopping the appropriate worker:

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