Traefik
LibreChat örneğinizi HTTPS üzerinden güvenli bir şekilde dışa açmak ve otomatik SSL/TLS sertifika yönetimi sağlamak için Traefik'i ters vekil sunucu ve yük dengeleyici olarak nasıl kullanacağınızı öğrenin.
Traefik, servislerinizi dağıtmayı ve yönetmeyi kolaylaştıran modern bir HTTP ters vekil sunucusu (reverse proxy) ve yük dengeleyicidir. LibreChat'i Docker üzerinde çalıştırıyorsanız, örneğinizi otomatik SSL sertifika yönetimi ile HTTPS üzerinden güvenli bir şekilde dışa açmak için Traefik kullanabilirsiniz.
Ön Koşullar
- Sisteminizde Docker ve Docker Compose yüklü olmalıdır
- Sunucunuzun IP adresine yönlendirilmiş bir alan adı
Yapılandırma
Traefik ve LibreChat Yapılandırması
docker-compose.override.yml dosyanıza aşağıdaki yapılandırmayı ekleyin:
version: '3'
services:
api:
labels:
- "traefik.enable=true"
- "traefik.http.routers.librechat.rule=Host(`your.domain.name`)"
- "traefik.http.routers.librechat.entrypoints=websecure"
- "traefik.http.routers.librechat.tls.certresolver=leresolver"
- "traefik.http.services.librechat.loadbalancer.server.port=3080"
networks:
- librechat_default
volumes:
- ./librechat.yaml:/app/librechat.yaml
traefik:
image: traefik:v3.6
ports:
- "80:80"
- "443:443"
volumes:
- "/var/run/docker.sock:/var/run/docker.sock:ro"
- "./letsencrypt:/letsencrypt"
networks:
- librechat_default
command:
- "--log.level=DEBUG"
- "--api.insecure=true"
- "--providers.docker=true"
- "--providers.docker.exposedbydefault=false"
- "--entrypoints.web.address=:80"
- "--entrypoints.websecure.address=:443"
- "--certificatesresolvers.leresolver.acme.tlschallenge=true"
- "[email protected]"
- "--certificatesresolvers.leresolver.acme.storage=/letsencrypt/acme.json"
# other configs here #
# NOTE: This needs to be at the bottom of your docker-compose.override.yml
networks:
librechat_default:
external: trueLet's Encrypt sertifika bildirimleri için [email protected] kısmını kendi e-posta adresinizle değiştirin.
daha fazla bilgi için bkz: Docker Override.
Konteynerleri başlatın
docker compose up -dBu, Traefik ve LibreChat konteynerlerini başlatacaktır. Traefik, Let's Encrypt'ten otomatik olarak bir SSL/TLS sertifikası alacak ve LibreChat örneğinizi HTTPS üzerinden güvenli bir şekilde dışa açacaktır.
Artık LibreChat örneğinize https://your.domain.name adresinden erişebilirsiniz. Traefik, SSL/TLS sonlandırmasını yönetecek ve istekleri LibreChat konteynerinize ters vekil sunucu (reverse proxy) olarak iletecektir.
Ek Notlar
- Traefik yapılandırması, HTTP ve HTTPS trafiği için sırasıyla 80 ve 443 numaralı portları dinler. Bu portların sunucunuzun güvenlik duvarında açık olduğundan emin olun.
- Traefik, SSL/TLS sertifikalarını ana makinenizdeki
./letsencryptdizininde saklar. Bu dizini periyodik olarak yedeklemek isteyebilirsiniz. - Daha gelişmiş yapılandırma seçenekleri için resmi Traefik belgelerine başvurun: https://doc.traefik.io/
Statik Dosya Önbelleğe Alma ve Sıkıştırma
LibreChat artık statik dosya önbelleğe almayı ve sıkıştırmayı yerel olarak desteklemektedir. Sıkıştırma işlemlerini yönetmek için Traefik kullanıyorsanız, gereksiz işlem yükünden kaçınmak için LibreChat içindeki sıkıştırmayı devre dışı bırakmalısınız. Bunu, LibreChat yapılandırmanızda DISABLE_COMPRESSION ortam değişkenini true olarak ayarlayarak yapabilirsiniz.
# .env file
DISABLE_COMPRESSION=trueBu, LibreChat'in statik dosyaları sıkıştırmasını engelleyerek Traefik'in sıkıştırma işlemini daha verimli bir şekilde yönetmesini sağlayacaktır.
LibreChat'te statik dosya işleme ve önbelleğe alma seçenekleri hakkında daha fazla bilgi için Static File Handling belgelerine başvurun.
Bu rehber nasıl?