Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack 🎉 Learn more
LibreChat

Genel Bakış

LibreChat dağıtımına giriş, çeşitli barındırma ve ağ hizmetlerinin karşılaştırmasını sunar

LibreChat dağıtımına yönelik giriş kılavuzuna hoş geldiniz. Bu belge, dağıtım stratejilerinin kapsamlı bir şekilde anlaşılmasını sağlayan, bir karşılaştırma tablosu ve ayrıntılı kılavuzlara referanslar içeren başlangıç düzeyinde bir genel bakış sunmaktadır.

Bu kılavuzda, özel gereksinimlerinizi karşılayacak şekilde özelleştirilmiş, çeşitli ortamlarda LibreChat'i verimli bir şekilde dağıtmak için farklı seçenekleri keşfedeceksiniz.

Minimum Requirements

LibreChat'i çalıştırmak için minimum gereksinimler:

  • 1 GiB RAM
  • 1 vCPU

Not: Her şey etkinleştirildiğinde, daha sorunsuz bir çalışma için RAM'i 2GB'a yükseltmeyi düşünebilirsiniz.

Karşılaştırma Tablosu

"Recommended" etiketinin, bu hizmetlerin iyi belgelendiğini, topluluk içinde yaygın olarak kullanıldığını veya önemli sayıda kullanıcı tarafından başarıyla dağıtıldığını belirttiğini unutmayın. Sonuç olarak, LibreChat'i bu hizmetler üzerinde dağıtmak için daha iyi destek sunabiliyoruz.

Barındırma Hizmetleri

HizmetAlanArtılarıEksileriYorumlarÖnerilen
DigitalOceanBulut AltyapısıSezgisel arayüz, istikrarlı fiyatlandırmaDaha küçük ağ ayak iziMeraklılar ve küçük-orta ölçekli işletmeler için ideal✅ Bilinen, Güvenilir
HuggingFaceAI/ML ÇözümleriML/NLP uzmanlığıML uygulamalarına odaklıAI/ML girişimleri için mükemmel✅ Ücretsiz
RailwayUygulama DağıtımıBasitleştirilmiş uygulama dağıtımıKonteynerlere sınırlı erişimBaşlaması çok kolay✅ Kolay

Ağ Hizmetleri

HizmetAlanArtılarıEksileriYorumlar
CloudflareWeb Performansı ve GüvenliğiKüresel CDN, DDoS koruması, kullanım kolaylığıMüşteri desteği yavaş olabilirGüvenlik iyileştirmeleri için en iyi seçenek
NginxWeb Sunucusu, Ters Vekil SunucuYüksek performans, kararlılık, kaynak verimliliğiManuel kurulum, sınırlı eklentilerPerformansı nedeniyle barındırma için yaygın olarak kullanılır
ngrokGüvenli TünellemeKullanımı kolay, ücretsiz katman mevcut, güvenli tünellemeİstemci indirmeyi gerektirir, karmaşık alan adı yönlendirmeYerel geliştirme testleri için kullanışlıdır
TraefikTers Vekil Sunucu, Yük DengeleyiciOtomatik hizmet keşfi, yerel küme desteğiYapılandırma yeni başlayanlar için karmaşık olabilirMikro hizmetler ve dinamik ortamlar için idealdir

Cloudflare, internet hizmetlerini hızlandıran ve güvenliğini sağlayan geniş ağıyla bilinir; ayrıca premium planlarında sezgisel bir kullanıcı arayüzü ve güçlü güvenlik seçenekleri sunar.

Ngrok, basitliği ve yerel sunucuları hızlı bir şekilde internete açabilme yeteneği ile övülür; bu da onu demolar ve testler için ideal kılar.

Nginx, kaynakları verimli bir şekilde yöneten ve kararlılık sunan yüksek performanslı bir web sunucusudur. Bununla birlikte, manuel kurulum gerektirir ve diğer sunuculara kıyasla daha az modül ve eklentiye sahiptir.

Traefik, otomatik yapılandırma güncellemeleri ve konteyner ortamlarındaki dağıtım kolaylığı ile bilinir; çeşitli arka uçlarla entegrasyonu ve dinamik yeniden yapılandırma yetenekleri sayesinde DevOps ekiplerine hitap eder. Mikro hizmet mimarilerinde oldukça başarılıdır ancak bulut yerel (cloud-native) teknolojilerinde yeni olanlar için zorluklar yaratabilir.

Bulut Sağlayıcı Entegrasyonu ve Yapılandırması

Bulut sağlayıcılarıyla entegrasyon seviyesi değişiklik göstermektedir: Railway gibi tek tıkla LibreChat kurulumuna olanak tanıyan platformlardan, Azure ve Terraform gibi Kod Olarak Altyapı (Infrastructure as Code) araçlarından yararlanan platformlara ve DigitalOcean, Linode ve Hetzner örneklerinde olduğu gibi manuel yapılandırma gerektiren daha geleneksel VM kurulumlarına kadar çeşitlilik sunar.

Temel Güvenlik Hususları

Dijital ortamda gezinmek, çevrimiçi varlıklarınızın güvenliğine ve bütünlüğüne yönelik sayısız tehdidi ortaya çıkarmaktadır. Dijital alanınızı korumak için güçlü güvenlik önlemleri uygulamak hayati önem taşır.

Uygulamaları küresel ölçekte dağıtırken, dijital varlıklarınızın korunmasını sağlamak için aşağıdaki temel faktörleri göz önünde bulundurmak esastır:

  1. Verilerin iletim sırasında şifrelenmesi: Verilerinizi ele geçirme ve dinleme saldırılarına karşı korumak için SSL sertifikalarıyla HTTPS uygulamak hayati önem taşır.
  2. Küresel erişilebilirlik etkileri: Uygulamanızı küresel ölçekte dağıtmanın, bölgeye göre değişen yasal ve uyumluluk gereklilikleri de dahil olmak üzere doğuracağı sonuçları anlayın.
  3. Güvenli yapılandırma: Uygulamanızın, güvenli protokollerin kullanımı, güvenli kimlik doğrulama ve yetkilendirme mekanizmaları dahil olmak üzere güvenli bir şekilde yapılandırıldığından emin olun.

Dağıtımınız için IaaS veya Tünel hizmetlerini kullanmayı seçerseniz, bunlardan birkaçını saymak gerekirse Nginx, Traefik veya Cloudflare gibi bir ters vekil sunucu (reverse proxy) kullanmanız gerekebilir.

Dijital varlıklarınızı korumak ve küresel dağıtımınızın başarısını sağlamak için uygun güvenlik önlemlerine yatırım yapmak çok önemlidir.

Bulut sağlayıcısını (ör. platform) seçme

"Gerçek bir dağıtım" için bir bulut sağlayıcısı seçmek; maliyet, performans, güvenlik ve ölçeklenebilirliği etkilediği için çok önemlidir. Veri merkezi konumları, endüstri standartlarına uyumluluk, mevcut araçlarla uyumluluk ve müşteri desteği gibi faktörleri göz önünde bulundurmalısınız.

Birçok açıdan farklılık gösteren çok sayıda seçenek bulunmaktadır. Bu bölümde, ekibin ve topluluğun kullandığı, ilk dağıtımınızda size yardımcı olabilecek bazı seçenekleri bulabilirsiniz.

Uygulama kullanımınız ve hedef kitleniz hakkında daha fazla bilgi edindiğinizde, uzun vadede sizin için en uygun bulut sağlayıcısının hangisi olduğuna karar verebilecek bir konumda olacaksınız.

Belirtildiği gibi, bulut sağlayıcıları / platformları birçok açıdan farklılık gösterir. Bizim amacımız doğrultusunda, temel endişelerinizin kullanım kolaylığı, güvenlik ve (başlangıç) maliyeti olduğunu varsayabiliriz. Ölçeklendirme, platformlardan herhangi biriyle önceki deneyiminiz veya başka herhangi bir özel özellik gibi daha fazla endişeniz varsa, muhtemelen hangi platformun size uygun olduğunu daha iyi biliyorsunuzdur ve herhangi bir özel kılavuzu takip etmeden doğrudan aradığınız bilgilere geçebilirsiniz.

İhtiyaçlarınız İçin Doğru Dağıtım Seçeneğini Belirleme

Dağıtım seçenekleri, en fazla çaba ve kontrol gerektirenden en az çaba ve kontrol gerektirene doğru sıralanmıştır.

Her dağıtım seçeneğinin kendine göre avantajları ve dezavantajları vardır; seçim, nihayetinde projenizin özel ihtiyaçlarına bağlıdır.

1. IaaS (Hizmet Olarak Altyapı)

Hizmet Olarak Altyapı (IaaS), sanal sunucular, ağ ve depolama gibi temel bilgi işlem kaynaklarını kullandıkça öde esasına göre sağlayan bir bulut bilişim modelini ifade eder. IaaS, kuruluşların fiziksel donanıma yatırım yapma ve bakımını sağlama ihtiyacı duymadan, bu kaynakları internet üzerinden kiralamasına ve bunlara erişmesine olanak tanır. Bu model; ölçeklenebilirlik, esneklik ve maliyet tasarrufunun yanı sıra, değişen iş ihtiyaçlarına yanıt olarak altyapı kaynaklarını hızlı ve kolay bir şekilde dağıtma ve yönetme yeteneği sağlar.

  • DigitalOcean: Öngörülebilir fiyatlandırma ile kullanıcı dostu arayüz.
  • Linode: Mükemmel müşteri desteği ve anlaşılır fiyatlandırmasıyla tanınır.

IaaS için Docker Compose kullanmanızı öneririz

Neden Docker Compose? Tutarlı dağıtımlar için Docker Compose kullanmanızı öneririz. Bu kılavuz, kolay dağıtım için her adımı net bir şekilde açıklamaktadır: Docker - Linux remote install guide

Not: Depoda iki adet Docker compose dosyası bulunmaktadır

  1. Geliştirme Odaklı docker compose docker-compose.yml
  2. Dağıtım Odaklı docker compose deploy-compose.yml

Temel fark, deploy-compose.yml dosyasının Nginx içermesi ve bu sayede yapılandırmasının Docker içinde dahili olarak gerçekleşmesidir.

Daha fazla bilgi için Nginx Rehberi bölümüne bakın

2. IaC (Infrastructure as Code)

Kod Olarak Altyapı (IaC), fiziksel donanım yapılandırması veya etkileşimli yapılandırma araçlarının aksine, bilgi işlem altyapılarının makine tarafından okunabilir tanım dosyaları aracılığıyla yönetilmesi ve sağlanması uygulamasıdır. Bu yaklaşım, özellikle modern bulut ortamlarında tekrarlanabilirlik, atılabilirlik ve ölçeklenebilirliği destekler. IaC, altyapı dağıtımının, yapılandırmasının ve yönetiminin otomasyonuna olanak tanıyarak kaynakların daha hızlı, daha tutarlı ve daha güvenilir bir şekilde sağlanmasını sağlar.

  • Azure: Kurumsal düzeydeki dağıtımlar için uygun kapsamlı hizmetler

Not: Digital Ocean, Linode ve Hetzner de IaC desteği sunmaktadır. Belirli bir rehberimiz olmasa da, Terraform için Azure Rehberi'ni uyarlamayı deneyebilir ve geliştirilmesine katkıda bulunarak bize yardımcı olabilirsiniz.

3. PaaS (Hizmet Olarak Platform)

Hizmet Olarak Platform (PaaS), bulutta bir geliştirme ve dağıtım ortamı sunan bir bulut bilişim modelidir. Geliştiricilere, temel altyapıyı yönetme ihtiyacı duymadan uygulamalar oluşturmaları, test etmeleri ve dağıtmaları için bir platform sağlar. PaaS genellikle veritabanları, ara yazılımlar ve geliştirme araçları gibi bir dizi kaynak içerir ve kullanıcıların basit bulut tabanlı uygulamalardan karmaşık kurumsal uygulamalara kadar her şeyi sunmalarını sağlar. Bu model, hizmet sağlayıcısı altyapının bakımından sorumlu olduğundan ve müşteri uygulamalarını oluşturmaya, dağıtmaya ve yönetmeye odaklanabildiğinden, pazara daha hızlı giriş, daha düşük maliyetler ve daha kolay bakım ve ölçeklendirme imkanı tanır.

  • Hugging Face: Makine öğrenimi ve NLP projeleri için özel olarak hazırlanmıştır.
  • Render: Entegre CI/CD hatları ile dağıtımları basitleştirir.
  • Heroku: Startup'lar ve hızlı dağıtım senaryoları için idealdir.

4. Tek Tıkla Dağıtım (PaaS)

  • Railway: Popüler tek tıkla dağıtım çözümü
  • Zeabur: Zahmetsiz tek tıkla dağıtım çözümlerine öncülük ediyor.

Diğer / Ağ Hizmetleri

1. Tünelleme

Tünelleme hizmetleri, yerel bir geliştirme sunucusunu internete açmanıza ve genel bir URL üzerinden erişilebilir hale getirmenize olanak tanır. Bu, özellikle çalışmalarınızı paylaşmak, test etmek ve üçüncü taraf hizmetlerle entegrasyon sağlamak için oldukça kullanışlıdır. Geliştirme bilgisayarınızı test amaçlı veya şirket içi (on-prem) kurulum için dağıtmanıza imkan tanır.

  • Ngrok: İnternete güvenli yerel tünelleme sağlar.
  • Cloudflare: Web performansını ve güvenliğini artırır.

2. DNS Hizmeti

  • Cloudflare DNS hizmeti, insanlar tarafından okunabilen alan adlarını makine tarafından okunabilen IP adreslerine dönüştürerek internet trafiğini yönetmek ve doğru hedeflere yönlendirmek için kullanılır. Cloudflare, güvenlik, performans ve güvenilirlik gibi çok çeşitli özellikler sunan bir hizmet sağlayıcıdır. Cloudflare DNS hizmeti, DNS kayıtlarını yönetmek için kullanıcı dostu bir arayüz sağlar ve trafik yönetimi, DNSSEC ve DDoS koruması gibi gelişmiş özellikler sunar.

ayrıca bkz: Cloudflare Rehberi

Sonuç

Sonuç olarak, dağıtım kılavuzumuzun girişi, LibreChat dağıtımı için çeşitli seçeneklere ve hususlara genel bir bakış sunmaktadır. İhtiyaçlarınızı dikkatlice değerlendirmeniz ve kuruluşunuzun amaç ve hedefleriyle en iyi örtüşen yolu seçmeniz önemlidir. İster kullanım kolaylığına, ister güvenliğe veya uygun maliyete öncelik verin, kılavuzumuz LibreChat'i başarıyla dağıtmanıza ve istediğiniz sonuca ulaşmanıza yardımcı olacak gerekli bilgileri sağlamaktadır. Bu kılavuzun, dağıtım yolculuğunuz boyunca sizin için değerli bir kaynak olacağını umuyoruz.

Unutmayın, topluluğumuz size yardımcı olmak için burada. Zorluklarla karşılaşırsanız veya sorularınız olursa, Discord kanalımız ve sorun giderme tartışma sayfamız destek ve tavsiye almak için mükemmel kaynaklardır.

Bu rehber nasıl?