Independent testing Updated August 2026 387 self-hosting guides 5 VPS providers tested

guide

Jan Server'ı VPS'te Kendiniz Barındırma (Kapsamlı Rehber)

Jan Server'ı Docker Compose ile VPS'e kurun: kurulum sihirbazını çalıştırın, uzak ya da yerel çıkarımı seçin ve her şeyden önce Keycloak ile Kong ağ geçidini güvene alın.

Jan Server, Jan projesinin kendi sunucunuzda barındırılabilen yarısıdır: OpenAI uyumlu bir API sunan Go mikroservisleri kümesi; önünde MCP araç entegrasyonu, Keycloak kimlik doğrulaması ve bir Kong ağ geçidi vardır. Tek bir konteyner değildir ve kurulum da bunu yansıtır.

İyi haber şu ki proje, yapılandırmayı sizin yerinize yazan bir kurulum sihirbazı sunuyor. Sihirbaz sırasında verdiğiniz asıl karar, çıkarımın nerede çalışacağıdır.

Başlamadan önce

Ucuz VPS planlarının çoğu 4 GB’dir ve yetmez. Eşiği geçenler şunlar:

SağlayıcıPlanvCPU / RAM / DiskFiyatLink
ContaboCloud VPS 44 / 8 GB / 100 GBKDV hariç 5.50 EUR/ayContabo
Hetzner CloudCX334 / 8 GB / 80 GB NVMeKDV hariç 8.49 EUR/ayHetzner Cloud
DigitalOcean8 GB droplet kademesi8 GBgüncel fiyata bakınDigitalOcean
Vultr8 GB örnek kademesi8 GBgüncel fiyata bakınVultr
Linode8 GB paylaşımlı kademe8 GBgüncel fiyata bakınLinode

Bu planların daha ayrıntılı dökümü için VPS karşılaştırmamıza bakın.

1. Adım: Bağlanın ve bağımlılıkları kurun

ssh kullanici@sunucu-ip-adresiniz
sudo apt update && sudo apt upgrade -y
sudo apt install -y docker.io docker-compose-v2 make git
sudo systemctl enable --now docker

Elinizdekinin Compose v2 olduğunu doğrulayın; çünkü Jan Server’ın compose dosyası, v1’in anlamadığı include: anahtarını kullanır:

docker compose version

2. Adım: Depoyu klonlayın

Kendi kendine barındırılan çoğu uygulamanın aksine burada kendi docker-compose.yml dosyanızı yazmazsınız. Deponun compose dosyası; altyapı, API servisleri, MCP araçları, web uygulaması ve çıkarım için parçaları içeri alır.

git clone https://github.com/janhq/server.git
cd server

3. Adım: Kurulum sihirbazını çalıştırın

make quickstart

Sihirbaz kök dizine tek bir .env yazar ve ardından Compose’u başlatır. Üç şey sorar:

Sihirbazı etkileşimli çalıştıramıyorsanız şablonu kopyalayıp doldurun:

cp .env.template .env
nano .env
make setup

make setup; bağımlılıkları denetler, dizinleri oluşturur ve hiçbir şeyi başlatmadan temel imajları indirir.

4. Adım: Yığını başlatın

make up-full

Konteynerler oturduğunda elinizde şunlar olur:

ServisPortGörevi
API Ağ Geçidi (Kong)8000Her şeyin giriş noktası
LLM API8080OpenAI uyumlu sohbet tamamlamaları
Response API8082Çok adımlı araç düzenlemesi
Media API8285Yüklemeler ve medya kimlikleri
MCP Araçları8091Arama, sayfa kazıma, kod çalıştırma
Web sohbet arayüzü3001Tarayıcı istemcisi
Keycloak8085Kimlik doğrulama konsolu

API dokümantasyonu http://sunucu-ip-adresiniz:8000/api/swagger/index.html adresinde sunulur.

5. Adım: Dışarı açmadan önce güvene alın

Bu, atlanmaması gereken adımdır. Herkese açık bir sunucuda iki varsayılan güvenli değildir:

  1. Keycloak konsolu admin / admin ile gelir. 8085 numaralı porttan hemen değiştirin. Kong’un doğruladığı token’ları Keycloak ürettiği için bu tek kimlik bilgisi API yüzeyinin tamamını korur.
  2. Dışarıdan yalnızca 8000 numaralı porta erişilebilmelidir. JWT ve API anahtarı denetimlerini Kong uygular; arkasındaki servis portları uygulamaz. Geri kalanını localhost’a bağlayın veya güvenlik duvarında kapatın.
sudo ufw allow OpenSSH
sudo ufw allow 443/tcp
sudo ufw enable

Ardından TLS’i Caddy, Traefik veya Nginx ile sonlandırıp 8000 numaralı porta yönlendirin. Kimlik doğrulaması olmayan bir LLM uç noktasını herkese açık internette bırakırsanız, genellikle günler içinde bulunur ve başkası tarafından kullanılır.

Çıkarımı yerelde çalıştırmak

Yerel vLLM’yi seçtiyseniz çıkarım parçası iki profil tanımlar. GPU profili, varsayılan model janhq/Jan-v1-4B ile vllm/vllm-openai:v0.11.2 imajını çalıştırır ve bir NVIDIA aygıtı ayırır; dolayısıyla tipik bir VPS’te başlamaz. CPU profili GPU olmadan çalışır ve test için gerçekten kullanışlıdır, ancak paylaşımlı vCPU’larda token üretimi kullanıcıların önüne koymak istemeyeceğiniz kadar yavaştır.

GPU kapasitesini kiralayıp Jan Server’ı uzak uç nokta olarak oraya yönlendirmek, istemler arasında boş duran bir GPU sunucusundan genellikle daha ucuza gelir.

Günlük işletim

Yeni bir sürüme geçmek için:

git pull
docker compose pull
make up-full

Postgres birimini ve kök dizindeki .env dosyanızı yedekleyin. .env, sihirbazın ürettiği gizli değerleri taşır; veri tabanını o dosya olmadan geri yüklerseniz elinizde çözemediğiniz oturumlar kalır.

Bir servisin ne yaptığını docker compose logs -f llm-api ile, ilgilendiğiniz servisin adını yazarak görebilirsiniz.

Sık karşılaşılan sorunlar

BelirtiNedeni
include geçerli bir compose anahtarı değilDocker Compose v1 kurulu; v2 gerekiyor
Konteynerler açılış sırasında sonlandırılıyor8 GB RAM’in altında yığın OOM ile öldürülüyor
Her API çağrısı 401 dönüyorİstekler 8000’deki Kong yerine doğrudan bir servis portuna gidiyor
vLLM konteyneri hiçbir zaman sağlıklı duruma gelmiyorNVIDIA aygıtı olmayan bir sunucuda GPU profili etkin

Jan Server bir VPS’ten tipik bir kendi kendine barındırılan uygulamadan fazlasını ister; bunun başlıca sebebi kendi ağ geçidini, kimlik sağlayıcısını ve veri tabanını beraberinde getirmesi, sizde hazır olduklarını varsaymamasıdır. 8 GB’a göre boyutlandırın, Kong’u TLS’in arkasına koyun ve her şeyden önce Keycloak parolasını değiştirin.

Frequently asked questions

Jan Server'ı bir VPS'te barındırmak için GPU gerekir mi?

Kurulum sihirbazı LLM sağlayıcınızı sorduğunda uzak ve OpenAI uyumlu bir uç nokta seçerseniz gerekmez. VPS o zaman yalnızca API, düzenleme ve kimlik doğrulama servislerini çalıştırır. Yerel vLLM seçeneğinin NVIDIA kartı bekleyen bir GPU profili ve kartsız çalışan ama çok daha yavaş bir CPU profili vardır.

Keycloak konsolu neden kullanıcı adı ve parola olarak admin kabul ediyor?

Compose kurulumunun getirdiği varsayılan kimlik bilgisi budur; dizüstü bilgisayarda sorun değildir, ancak herkese açık bir sunucuda kabul edilemez. İnternete herhangi bir port açmadan önce değiştirin, çünkü Kong ağ geçidinin arkasındaki her API yolunu koruyan şey Keycloak realm'idir.

Ters proxy'min arkasına hangi portu koymalıyım?

Kong API ağ geçidinin çalıştığı 8000 numaralı portu. Belgelenmiş giriş noktası odur ve tek tek servislerin önünde JWT ile API anahtarı denetimlerini uygular. Servis portlarını doğrudan yayımlamak, çağrı yapanların ağ geçidini ve kimlik doğrulamasını tamamen atlamasına izin verirdi.