A LibreTranslate saját üzemeltetése 2026-ban: modellek, API-korlátok és perzisztens adatok
Üzemeltesd saját környezetben a LibreTranslate-et megfelelő portokkal, perzisztens tárolóval, HTTPS-sel, titkos kulcsokkal, biztonsági mentésekkel és frissítési ellenőrzésekkel. Tudd meg, hogyan javítható, ha a modellek nem töltődtek le.
Ha már próbáltad saját környezetben üzemeltetni a LibreTranslate-et, valószínűleg ismerős ez a frusztráló állapot: a felület megjelenik, de a modellek nem töltődtek le, vagy egy kért nyelvpár nem érhető el. A konténer újralétrehozása ritkán oldja meg az URL-ek, az állapot és a függőségek közötti eltéréseket.
Ez az útmutató egy konkrét sikerességi feltételt használ: a telepített nyelvek listázását, egy rögzített mondat mindkét irányú lefordítását, valamint az API-kulcs kvótájának és hibaválaszainak ellenőrzését. Minden konfigurációs döntést ehhez a feltételhez mérünk, nem pedig egy zöld konténerjelzéshez.
A LibreTranslate visszaállítása üres gépen
Az első valódi rekord létrehozása előtt listázd az állapotot: a letöltött modelleket, az API-kulcsok adatbázisát és az egyedi konfigurációt. A bootstrap előtt csatold a /home/libretranslate/.local könyvtárat, írj bele ártalmatlan mintaadatokat, majd cseréld le a konténert annak bizonyítására, hogy az útvonal valóban perzisztens. A csatolást ártalmatlan adatok írásával, a LibreTranslate lecserélésével, majd az adatok visszaolvasásával ellenőrizd.
A snapshotok értékesek a gyors visszaállításhoz, de külön biztonsági mentésre is szükség van, ha a gép vagy a volume eltűnik. Az üres környezetbe a rögzített image használatával állítsd vissza az adatokat, majd ellenőrizd, hogy a modellek és az API-kulcsok állapota visszatért-e, és a regressziós tesztkészlet elfogadható eredménnyel lefut-e. A két helyreállítási mechanizmust a perzisztens volume-okkal és snapshotokkal tartsd elkülönítve.
Portok, folyamatok és privát szolgáltatások
Ne hagyd, hogy a LibreTranslate image véletlenül meghatározza a production architektúrát. Az image egy 5000-es porton futó folyamatot biztosít; a tárolás, a routing és a külső követelmények továbbra is tudatosan kialakított életciklust igényelnek. A helyi runtime-követelmény a modellek letöltéséhez szükséges tárhely, valamint a nyelvpárokhoz megfelelő CPU vagy GPU. Tartsd explicit módon kézben az életciklusát, hogy a LibreTranslate gépek közötti áthelyezése ne módosítsa észrevétlenül a működését.
A deployment akkor áll készen a mélyebb tesztelésre, ha képes listázni a telepített nyelveket, egy rögzített mondatot mindkét irányban lefordítani, valamint ellenőrizni az API-kulcs kvótáját és a hibaválaszokat. Kövesd a tranzakciót a logokban, és figyeld a betöltött nyelvi modelleket, a CPU-s inferenciaidejét, a párhuzamos kéréseket és a modellletöltések által felhasznált lemezterületet. Ezek a megfigyelések megmutatják, hogy az aktuális topológia a megfelelő komponenst izolálja-e.
A LibreTranslate deployment teljes körű ellenőrzése
A LibreTranslate production gate-jének végrehajthatónak kell lennie olyan személy számára is, aki nem építette a deploymentet. Add át neki a rögzített verziót, egy nem érzékeny tesztfiókot és ezt a feladatot: listázza a telepített nyelveket, fordítson le egy rögzített mondatot mindkét irányban, valamint ellenőrizze az API-kulcs kvótáját és a hibaválaszokat. Ha az utasítások nem dokumentált shell-hozzáférést igényelnek, a szolgáltatás üzemeltetési szempontból még nem áll készen.
Ismételd meg a gate-et úgy, hogy csak a konténert cseréled le. Ezután állítsd vissza a letöltött modelleket, az API-kulcsok adatbázisát és az egyedi konfigurációt üres infrastruktúrába, majd bizonyítsd, hogy a modellek és az API-kulcsok állapota visszatér, és a regressziós tesztkészlet elfogadható eredménnyel lefut. Mindkét sikeres futás során mérd a betöltött nyelvi modelleket, a CPU-s inferenciaidőt, a párhuzamos kéréseket és a modellletöltések által felhasznált lemezterületet; a váratlan eltérések gyakran hiányzó cache-re, indexre, workerre vagy adatcsatolásra utalnak.
Egészítsd ki a folyamatot egy hibaszimulációval: küldj ártalmatlan bemenetet a határhoz közeli erőforrás- vagy formátumkorláttal, amely ehhez a helyzethez kapcsolódik: a modellek nem töltődtek le, vagy egy kért nyelvpár nem érhető el. A LibreTranslate-nek hasznos hibaüzenetet kell adnia, meg kell őriznie a meglévő állapotot, és helyre kell állnia, amikor a feltétel ismét érvényessé válik. Mentsd el az időbélyegeket és a releváns sorokat a logból, a titkos adatokat kitakarva. Ez a bizonyíték lesz a következő image- vagy konfigurációmódosítás referenciája.
Áttekintendő konténerbeállítások
Olyan parancsot használj, amely minden fontos döntést láthatóvá tesz. Ez az alapkonfiguráció a LibreTranslate-et a host loopback interfészéhez köti, hozzáadja az ismert adatcsatolásokat, és megadja az első szükséges beállítást. A kiexponálás előtt erősítsd meg a helyi követelményt: a modellek letöltéséhez szükséges tárhelyet, valamint a nyelvpárokhoz megfelelő CPU-t vagy GPU-t.
docker run -d \
--name libretranslate \
--restart unless-stopped \
-p 127.0.0.1:5000:5000 \
-v libretranslate-data:/home/libretranslate/.local \
-e LT_API_KEYS=true \
libretranslate/libretranslate:latest
A floating taget cseréld tesztelt verzióra vagy digestre. Az indítás után ellenőrizd a docker logs --tail 200 libretranslate kimenetét, és győződj meg arról, hogy a folyamat az 5000-es porton figyel. Ezután hajtsd végre a LibreTranslate elfogadási műveletét; a gyökéroldal válasza önmagában nem bizonyítja, hogy a teljes forgatókönyv sikeres: listázd a telepített nyelveket, fordíts le egy rögzített mondatot mindkét irányban, és ellenőrizd az API-kulcs kvótáját és a hibaválaszokat.
Hitelesítő adatok, szerepkörök és kiexponált felületek
Az alkalmazásspecifikus biztonsági kockázat egy korlátlan, nyilvános API futtatása, amelyből mások kimeríthetik az erőforrásokat. Az üzemeltetési megoldás az API-kulcsok vagy a upstream authentication engedélyezése, a nyilvános kliensek rate limitingje, valamint csak a szükséges nyelvpárok telepítése. A bootstrapot korlátozott útvonalon fejezd be, majd az ideiglenes setup-hozzáférést azonnal szüntesd meg.
Az LT_API_KEYS a működést szabályozza, nem a bizalmasságot; ellenőrizd a típusát és az értékét, a valódi LibreTranslate-hitelesítő adatokat pedig külön tárold. A LibreTranslate folyamatának csak a dokumentált csatolásokat és függőségi útvonalakat add meg; kerüld a host root- és Docker socket-hozzáférést. Naplózd a sikertelen hitelesítéseket és a konfigurációs hibákat, de takard ki a tokeneket, a connection stringeket és a felhasználói tartalmakat.
A belső és külső URL-ek helyes kezelése
A TLS kiállítása csak a LibreTranslate útvonalának egyik fele. Az API-t HTTPS-en keresztül szolgáld ki, és dokumentáld a helyes base pathot. A forgalmat belsőleg az 5000-es portra küldd, a generált URL-ek és a secure cookie-k konzisztenciája érdekében pedig add tovább a külső scheme-et.
A teljes LibreTranslate-forgatókönyvet tiszta hálózatról használd, ne csupán a gyökéroldalt. A 502-es vagy tanúsítványhiba elkülönítésében segíthet az automatikus domain- és TLS-beállítás. Ha a forgalom eléri a folyamatot, de a modellek nem töltődtek le, vagy egy kért nyelvpár nem érhető el, a hibát ott diagnosztizáld, ahol jelentkezik, ahelyett hogy újabb redirecteket építenél a rendszerre.
Hibaszimulációk a LibreTranslate-hez
A kapacitásteszteknek a betöltött nyelvi modelleket, a CPU-s inferenciaidőt, a párhuzamos kéréseket és a modellletöltések által felhasznált lemezterületet kell vizsgálniuk, nem pedig a / ismételt lekérését. Futtasd a „telepített nyelvek listázása, egy rögzített mondat mindkét irányú lefordítása, valamint az API-kulcs kvótájának és a hibaválaszoknak az ellenőrzése” forgatókönyvet reális konkurenciával, és rögzítsd a késleltetést, a hibaarányt és a tárhely növekedését.
A frissítési tervnek számolnia kell ezzel a kockázattal: a modellcsomagok és a server release-ek módosíthatják a fordítási kimenetet, ezért tarts fenn egy kisebb regressziós tesztkészletet. Teszteld az új release-t reprezentatív bemenettel, majd ismételd meg az elfogadási tranzakciót, és hasonlítsd össze az eredményét. Ha a modellek nem töltődtek le, vagy egy kért nyelvpár nem érhető el, rögzítsd a sikertelen tranzakciót, és vizsgáld meg az első érintett határfelületet ahelyett, hogy automatikusan az ingresst tennéd felelőssé.
A LibreTranslate deploymentje Dockupon a határok megőrzésével
Egy Dockup-template-nek kódolnia kell az image-et, az 5000-es portot, a csatolásokat, a health timingot, a domaint, a TLS-t és a secret deliveryt. A Dockupnak meg kell őriznie a LibreTranslate runtime-beállításait, miközben az üzemeltető megerősíti ezt a helyi követelményt: a modellek letöltéséhez szükséges tárhelyet, valamint a nyelvpárokhoz megfelelő CPU-t vagy GPU-t. Ugyanaz a deployment célozhat Dockup-szervereket vagy ügyfél által csatlakoztatott kapacitást.
Miután az útvonal aktívvá vált, alkalmazd a nyilvános beállítást, és próbáld meg listázni a telepített nyelveket, lefordítani egy rögzített mondatot mindkét irányban, valamint ellenőrizni az API-kulcs kvótáját és a hibaválaszokat. Készíts biztonsági mentést a letöltött modellekről, az API-kulcsok adatbázisáról és az egyedi konfigurációról, és tartsd a visszaállítási gyakorlatot az üzemeltetési terv részeként; ezek a LibreTranslate felelősségi körébe tartoznak, és az infrastruktúra kiépítése után is láthatónak kell maradniuk.
Gyakran ismételt kérdések
Mire van szüksége a LibreTranslate-nek production deployment esetén?
A LibreTranslate konténerét egyetlen HTTPS originon keresztül, az 5000-es porton irányítsd. A helyi runtime-követelmény a modellek letöltéséhez szükséges tárhely, valamint a nyelvpárokhoz megfelelő CPU vagy GPU. Ne tekintsd késznek a LibreTranslate-et addig, amíg nem tudod listázni a telepített nyelveket, lefordítani egy rögzített mondatot mindkét irányban, illetve ellenőrizni az API-kulcs kvótáját és a hibaválaszokat.
Mely LibreTranslate-adatoknak kell szerepelniük a biztonsági mentésben?
Tartsd meg a /home/libretranslate/.local könyvtárat, és ugyanabban a helyreállítási manifestben szerepeljenek a letöltött modellek, az API-kulcsok adatbázisa és az egyedi konfiguráció. A tiszta LibreTranslate-visszaállítás csak akkor tekinthető sikeresnek, ha a modellek és az API-kulcsok állapota visszatér, és a regressziós tesztkészlet elfogadható eredménnyel lefut.
Szüksége van a LibreTranslate-nek HTTPS-re reverse proxy mögött?
A nyilvános LibreTranslate originnél használj HTTPS-t, a belső útvonalon pedig tartsd meg az 5000-es portot. A LibreTranslate beállítását megfelelően alkalmazd: az API-t HTTPS-en keresztül szolgáld ki, és dokumentáld a helyes base pathot. A LibreTranslate esetében a HTTPS védi a hitelesítő adatokat és a felhasználói tartalmakat az átvitel során, valamint konzisztensen tartja az originérzékeny kliensoldali működést.
Hogyan kell tesztelni egy LibreTranslate-frissítést?
A jelenlegi LibreTranslate-állapotot állítsd vissza egy izolált deploymentbe, alkalmazd a jelölt verziót, majd ismételd meg az elfogadási tranzakciót. Különösen figyelj erre, mert a modellcsomagok és a server release-ek módosíthatják a fordítási kimenetet, ezért tarts fenn egy kisebb regressziós tesztkészletet. Tartsd meg a korábbi LibreTranslate image-et addig, amíg nem érted teljesen annak adat-migrációs és rollback-határát.
