Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack ๐ŸŽ‰ Learn more
LibreChat

Gambaran Umum

Pengantar penerapan LibreChat, yang menawarkan perbandingan berbagai layanan hosting dan jaringan

Selamat datang di panduan pengantar untuk men-deploy LibreChat. Dokumen ini memberikan gambaran umum awal, yang menampilkan tabel perbandingan dan referensi ke panduan terperinci, guna memastikan pemahaman menyeluruh tentang strategi deployment.

Dalam panduan ini, Anda akan menjelajahi berbagai opsi untuk men-deploy LibreChat secara efisien di berbagai lingkungan, yang disesuaikan untuk memenuhi kebutuhan spesifik Anda.

Persyaratan Minimum

Persyaratan minimum untuk menjalankan LibreChat:

  • 1 GiB RAM
  • 1 vCPU

Catatan: Dengan semua fitur diaktifkan, Anda mungkin perlu mempertimbangkan untuk meningkatkan RAM ke 2GB agar pengoperasian lebih lancar.

Tabel Perbandingan

Perhatikan bahwa label "Recommended" menunjukkan bahwa layanan-layanan ini memiliki dokumentasi yang baik, digunakan secara luas di dalam komunitas, atau telah berhasil diterapkan oleh sejumlah besar pengguna. Hasilnya, kami dapat menawarkan dukungan yang lebih baik untuk menerapkan LibreChat pada layanan-layanan tersebut.

Layanan Hosting

LayananDomainKelebihanKekuranganKomentarDirekomendasikan
DigitalOceanInfrastruktur CloudAntarmuka intuitif, harga stabilJejak jaringan lebih kecilOptimal untuk penggemar & bisnis kecil hingga menengahโœ… Terkenal, Andal
HuggingFaceSolusi AI/MLSpesialisasi ML/NLPBerfokus pada aplikasi MLSangat baik untuk inisiatif AI/MLโœ… Gratis
RailwayDeployment AplikasiDeployment aplikasi yang disederhanakanAkses terbatas ke kontainerSangat mudah untuk memulaiโœ… Mudah

Layanan Jaringan

LayananDomainKelebihanKekuranganKomentar
CloudflarePerforma & Keamanan WebCDN global, perlindungan DDoS, kemudahan penggunaanDukungan pelanggan bisa lambatPilihan utama untuk peningkatan keamanan
NginxServer Web, Reverse ProxyPerforma tinggi, stabilitas, efisiensi sumber dayaPengaturan manual, ekstensi terbatasBanyak digunakan untuk hosting karena performanya
ngrokTunneling AmanMudah digunakan, tersedia paket gratis, tunneling amanPerlu unduh klien, perutean domain kompleksPraktis untuk pengujian pengembangan lokal
TraefikReverse Proxy, Load BalancerPenemuan layanan otomatis, dukungan klaster bawaanKonfigurasi bisa rumit bagi pemulaIdeal untuk layanan mikro dan lingkungan dinamis

Cloudflare dikenal karena jaringannya yang luas yang mempercepat dan mengamankan layanan internet, dengan antarmuka pengguna yang intuitif dan opsi keamanan yang tangguh pada paket premium.

Ngrok dipuji karena kesederhanaannya dan kemampuannya untuk mengekspos server lokal ke internet dengan cepat, menjadikannya ideal untuk demo dan pengujian.

Nginx adalah server web berkinerja tinggi yang efisien dalam menangani sumber daya dan menawarkan stabilitas. Namun, server ini memerlukan pengaturan manual dan memiliki lebih sedikit modul serta ekstensi dibandingkan server lainnya.

Traefik dikenal karena pembaruan konfigurasi otomatis dan kemudahan penerapan di lingkungan kontainer, yang menarik bagi DevOps karena integrasinya dengan berbagai back-end dan konfigurasi ulang yang dinamis. Traefik sangat unggul dalam arsitektur layanan mikro (microservices), namun mungkin menghadirkan tantangan bagi mereka yang baru mengenal teknologi cloud-native.

Integrasi dan Konfigurasi Vendor Cloud

Tingkat integrasi dengan penyedia cloud bervariasi: mulai dari platform yang memungkinkan penerapan LibreChat sekali klik seperti Railway, melalui platform yang memanfaatkan alat Infrastructure as Code seperti Azure dengan Terraform, hingga pengaturan VM yang lebih tradisional yang memerlukan konfigurasi manual, sebagaimana dicontohkan oleh DigitalOcean, Linode, dan Hetzner.

Pertimbangan Keamanan Penting

Menjelajahi lanskap digital mengungkap berbagai ancaman terhadap keamanan dan integritas aset daring Anda. Untuk melindungi domain digital Anda, sangat penting untuk menerapkan langkah-langkah keamanan yang tangguh.

Saat menerapkan aplikasi dalam skala global, sangat penting untuk mempertimbangkan faktor-faktor kunci berikut guna memastikan perlindungan aset digital Anda:

  1. Enkripsi data saat transit: Menerapkan HTTPS dengan sertifikat SSL sangat penting untuk melindungi data Anda dari intersepsi dan serangan penyadapan.
  2. Implikasi aksesibilitas global: Pahami implikasi dari penerapan aplikasi Anda secara global, termasuk persyaratan hukum dan kepatuhan yang berbeda-beda di setiap wilayah.
  3. Konfigurasi aman: Pastikan aplikasi Anda dikonfigurasi dengan aman, termasuk penggunaan protokol yang aman, autentikasi yang aman, dan mekanisme otorisasi.

Jika Anda memilih untuk menggunakan layanan IaaS atau Tunnel untuk penyebaran Anda, Anda mungkin perlu menggunakan reverse proxy seperti Nginx, Traefik, atau Cloudflare, untuk menyebutkan beberapa di antaranya.

Berinvestasi pada langkah-langkah keamanan yang tepat sangat penting untuk melindungi aset digital Anda dan memastikan keberhasilan penerapan global Anda.

Memilih penyedia Cloud (contoh: platform)

Memilih penyedia cloud untuk "penyebaran nyata" sangatlah penting karena hal ini berdampak pada biaya, kinerja, keamanan, dan skalabilitas. Anda harus mempertimbangkan faktor-faktor seperti lokasi pusat data, kepatuhan terhadap standar industri, kompatibilitas dengan alat yang sudah ada, dan dukungan pelanggan.

Terdapat banyak opsi yang berbeda dalam berbagai aspek. Pada bagian ini, Anda dapat menemukan beberapa opsi yang digunakan oleh tim dan komunitas yang dapat membantu Anda dalam penerapan pertama Anda.

Setelah Anda memperoleh lebih banyak pengetahuan tentang penggunaan aplikasi dan audiens Anda, Anda mungkin akan berada dalam posisi untuk memutuskan penyedia cloud mana yang paling cocok untuk Anda dalam jangka panjang.

Seperti yang telah disebutkan, penyedia layanan cloud / platform berbeda dalam banyak aspek. Untuk tujuan kita, kita dapat berasumsi bahwa dalam konteks Anda, perhatian utama Anda adalah kemudahan penggunaan, keamanan, dan biaya (awal). Jika Anda memiliki kekhawatiran lain seperti penskalaan, pengalaman sebelumnya dengan platform mana pun, atau fitur spesifik lainnya, maka Anda mungkin lebih tahu platform mana yang cocok untuk Anda dan Anda dapat langsung menuju ke informasi yang Anda cari tanpa mengikuti panduan khusus apa pun.

Memilih Opsi Deployment yang Tepat untuk Kebutuhan Anda

Opsi penyebaran dicantumkan berdasarkan urutan dari yang membutuhkan upaya dan kontrol paling banyak hingga yang paling sedikit.

Setiap opsi deployment memiliki kelebihan dan kekurangannya masing-masing, dan pilihan tersebut pada akhirnya bergantung pada kebutuhan spesifik proyek Anda.

1. IaaS (Infrastructure as a Service)

Infrastructure as a Service (IaaS) mengacu pada model komputasi awan yang menyediakan sumber daya komputasi dasar, seperti server virtual, jaringan, dan penyimpanan, berdasarkan basis bayar per penggunaan (pay-per-use). IaaS memungkinkan organisasi untuk menyewa dan mengakses sumber daya ini melalui internet, tanpa perlu berinvestasi dan memelihara perangkat keras fisik. Model ini memberikan skalabilitas, fleksibilitas, dan penghematan biaya, serta kemampuan untuk menyebarkan dan mengelola sumber daya infrastruktur dengan cepat dan mudah sebagai respons terhadap kebutuhan bisnis yang berubah.

  • DigitalOcean: Antarmuka yang ramah pengguna dengan harga yang dapat diprediksi.
  • Linode: Terkenal karena dukungan pelanggan yang luar biasa dan penetapan harga yang lugas.

Untuk IaaS kami merekomendasikan Docker Compose

Mengapa Docker Compose? Kami merekomendasikan Docker Compose untuk penerapan yang konsisten. Panduan ini menguraikan setiap langkah dengan jelas untuk kemudahan penerapan: Panduan instalasi jarak jauh Docker - Linux

Catatan: Terdapat dua file docker compose di dalam repo

  1. docker-compose.yml docker compose Berorientasi Pengembangan
  2. Docker compose berorientasi deployment deploy-compose.yml

Perbedaan utamanya adalah deploy-compose.yml menyertakan Nginx, sehingga konfigurasinya bersifat internal terhadap Docker.

Lihat Nginx Guide untuk informasi lebih lanjut

2. IaC (Infrastructure as Code)

Infrastructure as Code (IaC) merujuk pada praktik pengelolaan dan penyediaan infrastruktur komputasi melalui file definisi yang dapat dibaca oleh mesin, alih-alih konfigurasi perangkat keras fisik atau alat konfigurasi interaktif. Pendekatan ini mendorong reproduktibilitas, disposabilitas, dan skalabilitas, khususnya di lingkungan cloud modern. IaC memungkinkan otomatisasi penyebaran, konfigurasi, dan pengelolaan infrastruktur, yang menghasilkan penyediaan sumber daya yang lebih cepat, lebih konsisten, dan lebih andal.

  • Azure: Layanan komprehensif yang cocok untuk penerapan tingkat perusahaan

Catatan: Digital Ocean, Linode, dan Hetzner juga mendukung IaC. Meskipun kami belum memiliki panduan khusus, Anda dapat mencoba mengadaptasi Azure Guide untuk Terraform dan membantu kami berkontribusi dalam pengembangannya.

3. PaaS (Platform as a Service)

Platform as a Service (PaaS) adalah model komputasi awan yang menawarkan lingkungan pengembangan dan penerapan di cloud. Model ini menyediakan platform bagi pengembang untuk membangun, menguji, dan menerapkan aplikasi tanpa perlu mengelola infrastruktur yang mendasarinya. PaaS biasanya mencakup berbagai sumber daya seperti basis data, middleware, dan alat pengembangan, yang memungkinkan pengguna untuk menghadirkan aplikasi berbasis cloud yang sederhana hingga aplikasi perusahaan yang canggih. Model ini memungkinkan waktu pemasaran yang lebih cepat, biaya yang lebih rendah, serta pemeliharaan dan penskalaan yang lebih mudah, karena penyedia layanan bertanggung jawab untuk memelihara infrastruktur, dan pelanggan dapat fokus pada membangun, menerapkan, dan mengelola aplikasi mereka.

  • Hugging Face: Disesuaikan untuk proyek machine learning dan NLP.
  • Render: Menyederhanakan penyebaran dengan pipeline CI/CD terintegrasi.
  • Heroku: Optimal untuk startup dan skenario penerapan cepat.

4. One Click Deployment (PaaS)

  • Railway: Solusi deployment sekali klik yang populer
  • Zeabur: Memelopori solusi penerapan sekali klik yang mudah.

Lainnya / Layanan Jaringan

1. Tunneling

Layanan tunneling memungkinkan Anda untuk mengekspos server pengembangan lokal ke internet, sehingga dapat diakses melalui URL publik. Hal ini sangat berguna untuk berbagi pekerjaan, pengujian, dan integrasi dengan layanan pihak ketiga. Layanan ini memungkinkan Anda untuk men-deploy komputer pengembangan Anda untuk pengujian atau untuk instalasi on-prem.

  • Ngrok: Memfasilitasi tunneling lokal yang aman ke internet.
  • Cloudflare: Meningkatkan performa dan keamanan web.

2. Layanan DNS

  • Layanan DNS Cloudflare digunakan untuk mengelola dan mengarahkan lalu lintas internet ke tujuan yang tepat, dengan menerjemahkan nama domain yang dapat dibaca manusia menjadi alamat IP yang dapat dibaca mesin. Cloudflare adalah penyedia layanan ini, yang menawarkan berbagai fitur seperti keamanan, kinerja, dan keandalan. Layanan DNS Cloudflare menyediakan antarmuka yang ramah pengguna untuk mengelola catatan DNS, serta menawarkan fitur-fitur canggih seperti manajemen lalu lintas, DNSSEC, dan perlindungan DDoS.

lihat juga: Panduan Cloudflare

Kesimpulan

Sebagai kesimpulan, pengantar panduan penerapan kami memberikan gambaran umum mengenai berbagai opsi dan pertimbangan untuk menerapkan LibreChat. Penting untuk mengevaluasi kebutuhan Anda dengan cermat dan memilih jalur yang paling selaras dengan tujuan dan sasaran organisasi Anda. Baik Anda memprioritaskan kemudahan penggunaan, keamanan, atau keterjangkauan, panduan kami menyediakan informasi yang diperlukan untuk membantu Anda berhasil menerapkan LibreChat dan mencapai hasil yang diinginkan. Kami berharap panduan ini akan menjadi sumber daya yang berharga bagi Anda sepanjang perjalanan penerapan Anda.

Ingat, komunitas kami hadir untuk membantu. Jika Anda menemui kendala atau memiliki pertanyaan, saluran Discord dan diskusi pemecahan masalah kami adalah sumber daya yang sangat baik untuk mendapatkan dukungan dan saran.

Bagaimana panduan ini?