9. Oktober 2024

Installation libretranslate mit Docker

LibreTranslate ist eine Open-Source-Übersetzungssoftware, die mehrere Sprachen unterstützt und einfach zu installieren und zu verwenden ist. Mit Docker lässt sich LibreTranslate unkompliziert und schnell auf einem beliebigen System installieren

Hier ist eine Schritt-für-Schritt-Anleitung:

Voraussetzungen

1. Zuerst die Verzeichnisse erstellen:

mkdir -p /opt/libretranslate/docker
mkdir -p /opt/libretransalte/data/{key,local}

2. Nun die Berechtigungen setzen mit:

chown 1032:1032 /opt/libretransalte/data
chown 1032:1032 /opt/libretransalte/data/key
chown 1032:1032 /opt/libretransalte/data/local

3. Erstellen des Docker docker-compose.yml

cd /opt/libretranslate/docker
nano docker-compose.yml
  libretranslate:
    image: libretranslate/libretranslate:latest
    container_name: libretranslate
    restart: always
    dns:
      - 1.1.1.1
      - 9.9.9.9
    env_file:
      - /docker/libretranslate/libretranslate.env
    volumes:
     - libretranslate_api_keys:/app/db
     - libretranslate_local:/home/libretranslate/.local
    ports:
      - 5555:5000
    healthcheck:
      test: ['CMD-SHELL', './venv/bin/python scripts/healthcheck.py']
    environment:
      - LT_SUGGESTIONS=true
      - LT_API_KEYS=true
      - LT_REQUIRE_API_KEY_ORIGIN="translate.domain.tld"

4. Ein Enviromentfile wird ebenfalls noch benötigt:

nano libretranslate.env
#LT_LOAD_ONLY: 'en,de' # Kommentiere dies aus, um nur von Dir angegebene Sprachen vorab zu laden
LT_FRONTEND_LANGUAGE_SOURCE: 'auto'
LT_FRONTEND_LANGUAGE_TARGET: 'de'
LT_DEBUG=true
LT_UPDATE_MODELS=true
LT_SSL=true
LT_SUGGESTIONS=false
LT_METRICS=true
LT_API_KEYS=true
LT_THREADS=12
LT_FRONTEND_TIMEOUT=2000
LT_API_KEYS_DB_PATH=/app/db/api_keys.db

5. Container starten:

Nachdem du die Parameter angelegt hast, kannst du LibreTranslate mit folgendem Befehl in einem Docker-Container ausführen:

docker-compose up -d

6. Installation der Modelldateien (Sprachdateien):

In den Docker-Container einsteigen mit:

docker exec -it libretranslate bash

Den befehl ausführen, um alle Sprachen zu installieren:

for i in `/app/venv/bin/argospm list`;do /app/venv/bin/argospm install $i;done

Es dauerte einige Zeit alle bekannten und gängigen Sprachen zu installieren.
Wenn dies fertig ist, kannst du mit exit aussteigen.

Nun kannst Du prüfen, ob alles korrekt Installiert wurde mit:

ls -1 /docker/libretranslate/data/local/share/argos-translate/packages/
ar_en
de_en
en_ar
en_de
en_es
en_fi
en_ga
en_hi
en_hu
en_id
en_it
en_ja
en_ko
en_pt
en_sv
en_uk
en_ur
es_en
fi_en
ga_en
hi_en
hu_en
id_en
it_en
ja_en
ko_en
pt_en
sv_en
translate-az_en-1_5
translate-bg_en-1_9
translate-bn_en-1_9
translate-ca_en-1_7
translate-cs_en-1_9
translate-da_en-1_3
translate-el_en-1_9
translate-en_az-1_5
translate-en_bg-1_9
translate-en_bn-1_9
translate-en_ca-1_9
translate-en_cs-1_9
translate-en_da-1_3
translate-en_el-1_9
translate-en_eo-1_5
translate-en_et-1_9
translate-en_eu-1_9
translate-en_fa-1_5
translate-en_fr-1_9
translate-en_gl-1_9
translate-en_he-1_5
translate-en_lt-1_9
translate-en_lv-1_9
translate-en_ms-1_9
translate-en_nb-1_9
translate-en_nl-1_8
translate-en_pl-1_9
translate-en_ro-1_9
translate-en_ru-1_9
translate-en_sk-1_5
translate-en_sl-1_9
translate-en_sq-1_9
translate-en_th-1_9
translate-en_tl-1_9
translate-en_tr-1_5
translate-en_vi-1_9
translate-en_zh-1_9
translate-en_zt-1_9
translate-eo_en-1_5
translate-es_pt-1_0
translate-et_en-1_9
translate-eu_en-1_9
translate-fa_en-1_5
translate-fr_en-1_9
translate-gl_en-1_9
translate-he_en-1_5
translate-lt_en-1_9
translate-lv_en-1_9
translate-ms_en-1_9
translate-nb_en-1_9
translate-nl_en-1_8
translate-pl_en-1_9
translate-pt_es-1_0
translate-ro_en-1_9
translate-ru_en-1_9
translate-sk_en-1_5
translate-sl_en-1_9
translate-sq_en-1_9
translate-th_en-1_9
translate-tl_en-1_9
translate-tr_en-1_5
translate-vi_en-1_9
translate-zh_en-1_9
translate-zt_en-1_9
uk_en
ur_en

7. Erstellung des API Schlüssel:

Da wir „LTAPIKEYS=true“ verwenden, müssen wir einen API-KEY erstellen, um über API librelate verwenden zu können, gehen wir wieder in den Container mit:

docker exec -it libretranslate bash

Wir erstellen einen Schlüssel mit der erlaubnis, 120 Anfragen pro minute auszuführen.

/app/venv/bin/ltmanage keys add 120

Beispiel der Erwarteten Ausgabe.

libretranslate@ba7f705d97b9:/app$ /app/venv/bin/ltmanage keys
ecae7db0-bolha-us-is-cool-c84c14d2117a: 1200

Jetzt kannst Du libretranslate verwenden und per Web-GUI zugreifen über die Domain, die Du Dir vorher in dem Enviromentfile eingetragen hast.
https://libretranslate.domain.tld