Tüm dokümanlar

dokümanlar

Docker Compose stack’i dağıt

Çok konteynerli uygulamalar — veritabanı, önbellek ve worker’ıyla birlikte bir uygulama — tek parça olarak dağıtılır.

Hangi planda

Compose Free planda da çalışır: MihraOps aynı anda 1 Compose projesi izler. O projeyi istediğin kadar kaydedip yeniden yayınlayabilirsin; kota yalnızca ikinci projeyi açmayı kapatır. Pro tavanı kaldırır.

Sunucuda bizden önce duran, MihraOps’un oluşturmadığı stack’ler listede görünür ve kota harcamaz. Birini MihraOps yönetimine almak (benimsemek) kota harcar.

Stack sunucuda nasıl durur

Her stack, sunucunda ~/.mihraops/compose/<proje>/ altında bir proje dizinine dönüşür ve docker-compose.yml dosyan içine konur. Compose dosyasının başvurduğu ek dosyalar — .env, init script’i, yapılandırma dosyası — aynı dizine yerleştirilir.

Bu sıradan bir Compose projesidir. MihraOps yarın ortadan kalksa o dizine girip elle docker compose up -d çalıştırabilirsin.

Stack’i dağıt

  1. 01docker-compose.yml dosyanı seç ya da içe aktar.
  2. 02Projeye bir ad ver. Bu ad hem Compose proje adı hem dizin adı olur; küçük harf, rakam, tire ve alt çizgi kullanabilirsin.
  3. 03Compose dosyasının ihtiyaç duyduğu ek dosyaları ekle.
  4. 04Dağıt. MihraOps dosyaları SSH ile yazar ve Compose’u sunucuda çalıştırır.

Compose v1 ve v2

MihraOps varsa docker compose (v2 eklentisi), yoksa bağımsız docker-compose ikilisini kullanır. Hangisi olduğunu senin seçmen gerekmez.

Stack’i güncellemek

Compose kartındaki ayar düğmesinden tek proje webhook’u oluştur ve güncellenecek servisleri seç. Yalnız seçilen servislerin imajları çekilir ve servisler yeniden oluşturulur; bağımlılıklar yeniden başlatılmaz. Seçimi kaydetmek mevcut webhook adresini ve tokenını korur. Servis seçimi olmayan eski webhook projenin tamamını günceller.

Compose düzenleme ekranındaki Restart kaydedip compose up -d çalıştırır; Restart Pull registry’deki güncel image’ları kontrol eder; Restart Without Cache önce build servislerini build --no-cache ile yeniden oluşturur, sonra stack’i başlatır.

Bunu bir deploy webhook’uyla birleştirirsen, depona atılan push stack’i kendi başına güncelleyebilir.

İlgili rehberler