Belgeler menüsüDocker

Docker ile çalıştırma

bipanel, Docker'da tek bir konteyner olarak çalışır: Apache, PHP-FPM, MariaDB ve panel aynı imajdadır, kalıcı veriler /data volume'unda durur. Web siteleri, veritabanları ve uygulamalar için uygundur; e-posta, DNS sunucusu, FTP ve sistem düzeyindeki araçlar yalnızca sunucu kurulumunda vardır.

Son güncelleme:

Bu sayfada
  1. Konteyner modu nedir?
  2. Docker Compose ve Caddy ile kurulum
    1. Caddy ne yapar?
  3. Ortam değişkenleri
  4. Kalıcı veriler: /data
  5. Konteyner modunda farklı olanlar
  6. Güncelleme
  7. Yönetici parolasını sıfırlama

#Konteyner modu nedir?

Konteyner kurulumunda bipanel tek bir Debian tabanlı imajdır. İçinde Apache 2.4 (mpm_event), PHP 8.2, 8.3 ve 8.4 için PHP-FPM, gömülü MariaDB, Node.js 22, Python 3, phpMyAdmin, git, rclone ve certbot bulunur. Panel süreci Apache'yi, PHP-FPM'i ve MariaDB'yi kendisi başlatır. Apache PORT değişkenindeki portu (varsayılan 8080) dinler; panele ve phpMyAdmin'e bu port üzerinden erişilir.

Sunucu kurulumundan farklı olarak ayrı yönetici ve kullanıcı portları yoktur. Aynı adreste:

  • Sunucu Yönetimi: https://<panel adresi>/admin (ilk kullanıcı admin)
  • Kullanıcı paneli: https://<panel adresi>/panel

Sistem kullanıcıları, Apache sanal konakları ve PHP-FPM havuzları konteyner içinde tutulmaz; her açılışta /data içindeki panel veritabanından yeniden üretilir. Bu yüzden volume bağlı olduğu sürece konteyneri silip yeniden oluşturmak güvenlidir.

Lisans kuralları aynıdır: lisans anahtarı olmadan Topluluk sürümü 3 barındırma hesabına kadar çalışır, Pro özellikler Pro lisans ister. Ayrıntılar için Lisans ve Fiyatlar.

#Docker Compose ve Caddy ile kurulum

Kendi VPS'inizde Docker Engine 24 veya üstü ile Docker Compose v2 gerekir. 2 GB bellek yeterlidir, 4 GB önerilir. Panel için bir alan adı ve sunucuya yönlendirilmiş bir A kaydı olmalı, 80 ve 443 portları açık olmalıdır.

Sürüm paketi Dockerfile, docker-compose.yml ve deploy/caddy/Caddyfile dosyalarını içerir. Paketi ve güncel komutları İndir sayfasından alın. Paketi açtıktan sonra dizinde bir .env dosyası oluşturup BIPANEL_PANEL_HOST, BIPANEL_ADMIN_PASSWORD ve ACME_EMAIL değerlerini yazın, ardından:

docker compose up -d --build
docker compose logs -f bipanel

İlk açılışta MariaDB veri dizini hazırlandığı için panelin gelmesi birkaç dakika sürebilir. İmajın sağlık denetimi /api/health adresini yoklar ve başlangıç için 180 saniye bekler.

#Caddy ne yapar?

Compose dosyası iki servis tanımlar: dışarıya port açmayan bipanel ve önündeki caddy (80, 443 ve 443/UDP). Caddy her alan adı için ilk istekte otomatik Let's Encrypt sertifikası alır, ancak yalnızca bipanel'de kayıtlı alan adları için: sertifika istemeden önce panelin iç denetim adresine sorar. HTTP istekleri HTTPS'e yönlendirilir. Bu düzende BIPANEL_SSL_MODE=edge ve BIPANEL_TRUST_PROXY_HOPS=2 (Caddy ve Apache) ayarlıdır; böylece gerçek istemci IP'si kaba kuvvet korumasında doğru görünür.

Caddy yerine başka bir ters vekil kullanıyorsanız X-Forwarded-For ve X-Forwarded-Proto başlıklarını iletin, Host başlığını değiştirmeyin, WebSocket yükseltmesine izin verin (web terminali ve canlı günlükler için) ve BIPANEL_TRUST_PROXY_HOPS değerini vekil sayısının bir fazlası yapın.

#Ortam değişkenleri

DeğişkenVarsayılanAçıklama
BIPANEL_ADMIN_PASSWORDrastgeleİlk yönetici parolası. Verilmezse rastgele üretilir, günlüğe bir kez yazılır ve /data/initial-admin.txt dosyasına kaydedilir. Yalnızca ilk açılışta kullanılır.
BIPANEL_ADMIN_USERadminİlk yöneticinin kullanıcı adı.
BIPANEL_ADMIN_EMAILyokİlk yöneticinin e-posta adresi.
BIPANEL_PANEL_HOSTkonteynerin sunucu adıPanelin alan adı. Konteynerde sunucu adı panelden değiştirilemez; bu değişkenle belirlenir.
BIPANEL_SSL_MODEacme (Compose örneğinde edge)edge: TLS'i öndeki ters vekil sonlandırır. acme: panel Let's Encrypt sertifikalarını certbot ile kendisi alır. off: sertifika yönetimi yok.
BIPANEL_TRUST_PROXY_HOPS1 (Compose örneğinde 2)Güvenilen vekil sayısı (Apache dahil).
PORT8080Apache'nin konteyner içinde dinlediği port.
BIPANEL_MYSQL_URL veya MYSQL_URLyokGömülü MariaDB yerine harici bir MySQL/MariaDB sunucusu (ör. mysql://root:parola@mysql:3306).
BIPANEL_MYSQL_BUFFER_POOL128MGömülü MariaDB'nin InnoDB tampon havuzu; belleği az sunucularda düşürün.
BIPANEL_MAX_UPLOAD_MB1024Dosya yöneticisi yükleme sınırı (MB).
BIPANEL_SECRET/data/secret.keyPanelin gizli anahtarı (en az 32 karakter). Verilmezse ilk açılışta üretilip volume'a yazılır.

#Kalıcı veriler: /data

Konteynerin kalıcı olan tek dizini /data volume'udur:

Yolİçerik
/data/bipanel.dbPanel veritabanı: hesaplar, alan adları, ayarlar
/data/home/<hesap>Hesap dosyaları
/data/mysqlGömülü MariaDB veri dizini
/data/backups, /data/logs, /data/ssl, /data/jobsYedekler, günlükler, sertifikalar, iş kayıtları

Kurulumun kimliği ve lisans ayarları da bu volume'da tutulur. Volume kaybolursa kurulum sıfırdan başlar ve lisans anahtarını yeniden girmeniz gerekir. Hesap yedeklerini rclone ile uzak bir hedefe göndermeniz önerilir (bkz. Yedekleme ve taşıma).

#Konteyner modunda farklı olanlar

Aşağıdakiler konteynerde kullanılamaz; panel bu ekranları gerekçesiyle birlikte pasif gösterir:

ÖzellikKonteynerde durum
E-posta sunucusu ve webmailYok; e-posta için sunucu kurulumu gerekir
Yetkili DNS sunucusuYok; DNS bölge düzenleyici kayıt önerisi verir, kayıtlar Cloudflare ile eşitlenebilir
FTP, SSH ve SFTPYok; Dosya Yöneticisi, web terminali ve Git ile dağıtım kullanılır
Güvenlik duvarı ve nftables DDoS korumasıYok; ağı Docker sunucusu yönetir. Panel içi kaba kuvvet koruması çalışır
Disk kotalarıUygulanmaz; disk kullanımı yalnızca izlenir
Hesap başına CPU ve bellek sınırı, hesap yalıtımıYok (systemd yok); uygulamalara yalnızca süreç sayısı sınırı uygulanır
Disk yöneticisiYok; diskleri ve volume'ları Docker sunucusu yönetir
Otomatik işletim sistemi güvenlik güncellemeleriYok; paketler imajla gelir
Sunucuyu yeniden başlatma, root parolası, DNS çözücüleriYok; Docker sunucusunda yönetilir
Uzak masaüstü (Pro) ve Podman konteynerleriYok

Çalışanlar: hesaplar ve paketler, alan adları, PHP 8.2–8.4, MySQL/MariaDB ve phpMyAdmin, Node.js ve Python uygulamaları, Git ile dağıtım, uygulama yükleyici, cron (panelin kendi zamanlayıcısıyla), yedekleme, dosya yöneticisi, web terminali ve API. Kurulum bildirimi konteynerde de her zaman açıktır; gönderilen bilgiler Sunucu Yönetimi → Kurulum bildirimi ekranında görünür.

#Güncelleme

Konteyner kurulumu panelin kendisini sunucu kurulumu gibi yerinde güncellemez; güncelleme yeni sürümün imajıyla yeniden dağıtılarak yapılır. docker-compose.yml içindeki bipanel imaj etiketini yeni sürüme çevirin ve konteyneri yeniden oluşturun:

docker compose pull
docker compose up -d

Sürüm paketinden derlediyseniz yeni paketi açıp docker compose up -d --build çalıştırın. Hesaplar, siteler ve ayarlar volume'da kalır. Sürüm kanalları için Güncellemeler sayfasına bakın.

#Yönetici parolasını sıfırlama

BIPANEL_ADMIN_PASSWORD değişkenini sonradan değiştirmek parolayı sıfırlamaz. Konteynerin içinde sıfırlama aracını çalıştırın (iki aşamalı doğrulamayı kapatmak için --disable-2fa ekleyin):

docker compose exec bipanel node /opt/bipanel/deploy/tools/reset-admin.mjs admin 'YeniParola123!'

Komut satırı aracı da imajdadır: docker compose exec bipanel bipanel account list (token /data/cli.token dosyasından okunur).

Bu sayfada eksik ya da hatalı bir bilgi mi var? Bize yazın.