2026'da LibreTranslate Nasıl Self-Host Edilir: Modeller, API Limitleri ve Kalıcı Veriler
LibreTranslate'i doğru portlar, kalıcı depolama, HTTPS, secret'lar, yedekler ve upgrade kontrolleriyle self-host edin. Modeller indirilmediğinde nasıl düzeltileceğini öğrenin.
LibreTranslate'i daha önce self-host etmeyi denediyseniz, şu can sıkıcı duruma muhtemelen aşinasınızdır: UI görünür, ancak modeller indirilmemiştir veya istenen dil çifti kullanılamıyordur. Container'ı yeniden oluşturmak, URL'ler, state ve dependency'ler arasındaki uyumsuzluğu nadiren çözer.
Bu rehberde tek bir somut tamamlanma kriteri kullanılır: yüklü dilleri listelemek, sabit bir cümleyi iki yönde de çevirmek ve API key quota ile hata yanıtlarını test etmek. Her configuration tercihi, yeşil bir container badge'ine göre değil, bu kritere göre değerlendirilir.
Boş bir host üzerinde LibreTranslate'i geri yükleme
İlk gerçek kayıt oluşturulmadan önce state'i listeleyin: indirilmiş modelleri, API key database'ini ve custom configuration'ı kontrol edin. Bootstrap işleminden önce /home/libretranslate/.local yolunu mount edin, zararsız örnek veriler yazın ve bu yolun gerçekten kalıcı olduğunu kanıtlamak için container'ı değiştirin. Zararsız veriler yazarak, LibreTranslate'i değiştirerek ve verileri yeniden okuyarak mount'u doğrulayın.
Snapshot'lar hızlı rollback için değerlidir, ancak host veya volume ortadan kaybolduğunda bağımsız bir backup gerekir. Pinned image ile boş bir ortama restore edin; modellerin ve API key state'inin geri geldiğini, regression corpus'un kabul edilebilir çıktıyla tamamlandığını doğrulayın. Bu iki recovery mekanizmasını birbirinden ayrı tutmak için kalıcı volume'ları ve snapshot'ları kullanın.
Portlar, process'ler ve private service'ler
LibreTranslate image'ının production architecture'ını yanlışlıkla seçmesine izin vermeyin. Image, 5000 portunda çalışan bir process sağlar; storage, routing ve external requirement'lar yine bilinçli lifecycle'lar gerektirir. Local runtime requirement, dil çiftlerine uygun model download storage'ı ile CPU veya GPU'dur. LibreTranslate'i host'lar arasında taşırken davranışın sessizce değişmemesi için lifecycle'ını açıkça yönetin.
Deployment; yüklü dilleri listeleyebildiğinde, sabit bir cümleyi iki yönde de çevirebildiğinde ve API key quota ile hata yanıtlarını test edebildiğinde daha kapsamlı testlere hazırdır. Log'larda transaction'ı takip edin; yüklenmiş language model'lerini, CPU inference süresini, paralel request'leri ve model download'larının kullandığı disk alanını izleyin. Bu gözlemler, mevcut topology'nin doğru component'i izole edip etmediğini gösterir.
LibreTranslate deployment'ını uçtan uca kanıtlayın
LibreTranslate için production gate, deployment'ı oluşturmamış biri tarafından çalıştırılabilmelidir. Bu kişiye pinned version'ı, hassas olmayan bir test hesabını ve şu görevi verin: yüklü dilleri listelemek, sabit bir cümleyi iki yönde de çevirmek ve API key quota ile hata yanıtlarını test etmek. Talimatlar dokümante edilmemiş shell erişimi gerektiriyorsa service henüz operational olarak hazır değildir.
Yalnızca container'ı değiştirdikten sonra gate'i tekrarlayın. Ardından indirilmiş modelleri, API key database'ini ve custom configuration'ı boş infrastructure'a restore edin; modellerin ve API key state'inin geri geldiğini, regression corpus'un kabul edilebilir çıktıyla tamamlandığını kanıtlayın. Her iki başarılı çalıştırma sırasında yüklenmiş language model'lerini, CPU inference süresini, paralel request'leri ve model download'larının kullandığı disk alanını ölçün; beklenmeyen farklar çoğunlukla eksik bir cache, index, worker veya data mount olduğunu ortaya çıkarır.
Bir failure drill ekleyin: şu sınırla ilişkili resource veya format limitine yakın zararsız bir input gönderin: modeller indirilmemiş veya istenen dil çifti kullanılamıyor. LibreTranslate faydalı bir hata üretmeli, mevcut state'i korumalı ve geçerli koşul geri geldiğinde toparlanmalıdır. Secret'ları redakte ederek timestamp'leri ve ilgili log satırlarını kaydedin. Bu kanıt, sonraki image veya configuration değişikliği için referans olur.
İncelenmeye değer container ayarları
Önemli her tercihi görünür kılan bir command kullanın. Bu baseline, LibreTranslate'i host loopback'e bind eder, bilinen data mount'larını ekler ve gerekli ilk ayarı sağlar. Dışarı açmadan önce local requirement'ı doğrulayın: dil çiftlerine uygun model download storage'ı ve CPU veya GPU.
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
Floating tag'leri test edilmiş bir version veya digest ile değiştirin. Başlangıçtan sonra docker logs --tail 200 libretranslate çıktısını inceleyin ve process'in 5000 portunu dinlediğini doğrulayın. Ardından LibreTranslate acceptance action'ını çalıştırın; root page yanıtı tam senaryonun başarıyla tamamlandığını kanıtlayamaz: yüklü dilleri listeleyin, sabit bir cümleyi iki yönde de çevirin ve API key quota ile hata yanıtlarını test edin.
Credential'lar, roller ve dışa açık yüzeyler
Application'a özgü security riski, başkalarının tüketebileceği limitsiz bir public API çalıştırmaktır. Operational çözüm; API key'leri veya upstream authentication'ı etkinleştirmek, public caller'lar için rate limit uygulamak ve yalnızca gerekli dil çiftlerini yüklemektir. Bootstrap işlemini restricted bir route üzerinden tamamlayın ve geçici setup erişimini hemen ardından kaldırın.
LT_API_KEYS, confidentiality yerine davranışı kontrol eder; type'ını ve value'sunu doğrulayın, gerçek LibreTranslate credential'larını ayrı saklayın. LibreTranslate process'ine yalnızca dokümante edilmiş mount'ları ve dependency route'larını verin; host root ve Docker socket erişiminden kaçının. Başarısız authentication ve configuration hatalarını log'layın, ancak token'ları, connection string'leri ve kullanıcı içeriğini redakte edin.
Internal ve external URL'leri karıştırmayın
TLS issuance, LibreTranslate route'unun yalnızca yarısıdır. API'yi HTTPS üzerinden sunun ve doğru base path'i dokümante edin. Trafiği içeride 5000 portuna gönderin ve oluşturulan URL'ler ile secure cookie'lerin tutarlı kalması için external scheme'i forward edin.
Tam LibreTranslate senaryosunu yalnızca root page'i değil, temiz bir network üzerinden test edin. 502 veya certificate hatası automatic domain and TLS setup ile izole edilebilir. Trafik process'e ulaşıyor ve modeller indirilmemiş veya istenen dil çifti kullanılamıyorsa, redirect'leri üst üste eklemek yerine bu koşulu ortaya çıktığı yerde teşhis edin.
LibreTranslate için failure drill'leri
Capacity test'leri / adresine tekrarlanan bir request göndermek yerine yüklenmiş language model'lerini, CPU inference süresini, paralel request'leri ve model download'larının kullandığı disk alanını test etmelidir. “Yüklü dilleri listele, sabit bir cümleyi iki yönde de çevir ve API key quota ile hata yanıtlarını test et” senaryosunu gerçekçi concurrency ile çalıştırın; latency'yi, error rate'i ve storage growth'u kaydedin.
Upgrade planlaması şu riski hesaba katmalıdır: model package'ları ve server release'leri çeviri çıktısını değiştirebilir; bu nedenle küçük bir regression corpus tutun. Yeni release'i temsili input'larla test edin, ardından acceptance transaction'ı tekrarlayın ve sonucu karşılaştırın. Modeller indirilmemiş veya istenen dil çifti kullanılamıyorsa, ingress'in sorumlu olduğunu varsaymak yerine başarısız transaction'ı kaydedin ve dahil olan ilk boundary'yi inceleyin.
Sınırlarını kaybetmeden LibreTranslate'i Dockup üzerinde deploy etme
Bir Dockup template'i image'ı, 5000 portunu, mount'ları, health timing'i, domain'i, TLS'i ve secret delivery'yi tanımlamalıdır. Operator şu local requirement'ı doğrularken Dockup, LibreTranslate runtime ayarlarını korumalıdır: dil çiftlerine uygun model download storage'ı ve CPU veya GPU. Aynı deployment Dockup server'larını veya müşterinin bağladığı capacity'yi hedefleyebilir.
Route aktif olduktan sonra public setting'i uygulayın ve yüklü dilleri listelemeyi, sabit bir cümleyi iki yönde de çevirmeyi ve API key quota ile hata yanıtlarını test etmeyi deneyin. İndirilmiş modelleri, API key database'ini ve custom configuration'ı yedekleyin; restore exercise'ını operating plan'a dahil edin. Bunlar, infrastructure provisioning sonrasında da görünür kalan LibreTranslate sorumluluklarıdır.
Sık sorulan sorular
Production deployment için LibreTranslate neye ihtiyaç duyar?
LibreTranslate container'ını bir HTTPS origin üzerinden 5000 portunda route edin. Local runtime requirement, dil çiftlerine uygun model download storage'ı ile CPU veya GPU'dur. Yüklü dilleri listeleyene, sabit bir cümleyi iki yönde de çevirene ve API key quota ile hata yanıtlarını test edene kadar LibreTranslate'i hazır kabul etmeyin.
Hangi LibreTranslate verileri backup'a dahil edilmelidir?
/home/libretranslate/.local yolunu persist edin ve indirilmiş modelleri, API key database'ini ve custom configuration'ı aynı recovery manifest'ine dahil edin. Temiz bir LibreTranslate restore işlemi yalnızca modeller ve API key state'i geri geldiğinde, regression corpus da kabul edilebilir çıktıyla tamamlandığında başarılıdır.
LibreTranslate reverse proxy arkasında HTTPS gerektirir mi?
Public LibreTranslate origin için HTTPS kullanın ve internal route üzerinde 5000 portunu koruyun. LibreTranslate ayarını doğru uygulayın: API'yi HTTPS üzerinden sunun ve doğru base path'i dokümante edin. LibreTranslate için HTTPS, credential'ları veya kullanıcı içeriğini aktarım sırasında korur ve origin'e duyarlı client davranışını tutarlı kılar.
Bir LibreTranslate upgrade'i nasıl test edilmelidir?
Mevcut LibreTranslate state'ini izole bir deployment'a restore edin, aday version'ı uygulayın ve acceptance transaction'ını tekrarlayın. Model package'ları ve server release'leri çeviri çıktısını değiştirebileceğinden özellikle dikkatli olun; bu nedenle küçük bir regression corpus tutun. Data migration ve rollback boundary'leri anlaşılana kadar önceki LibreTranslate image'ını saklayın.
