Docker Compose Oluşturucu
docker-compose.yml dosyasını elle yazmak, tam girinti kurallarını hatırlamak, her port eşlemesini tırnak içine almak ve Compose programınızın hangi sürüm dizesini anladığını bilmek demektir. Bu oluşturucu, hizmetleri basit alanlarla tanımlamanızı sağlar: bir ad, bir görüntü, host:container port eşlemeleri ve volume. Modern Compose spesifikasyonuna uygun (sürüm anahtarı olmadan) geçerli bir YAML dosyası ve makul varsayılan ayarlar üretir.
Compose dosyası nasıl oluşturulur
-
1
Hizmet ekleyin
Her hizmet için bir ad, görüntü, host:container port eşlemeleri ve volume belirleyin. Başlangıç için iki örnek hizmet doldurulmuştur.
-
2
Satırları düzenleyin veya kaldırın
Herhangi bir alanı doğrudan düzenleyin, + Service düğmesiyle başka bir hizmet ekleyin veya gerekmeyen bir satırı silin.
-
3
Üretilen YAML dosyasını inceleyin
Önizleme yazdıkça güncellenir: port eşlemeleri tırnak içine alınır ve modern Compose spesifikasyonunun beklediği gibi sürüm anahtarı atlanır.
-
4
Dosyayı kopyalayın
Üretilen docker-compose.yml dosyasını kopyalayıp projenizin kök dizinine yapıştırın.
Modern Compose spesifikasyonu
Compose V2 (Docker Desktop ve modern Docker Engine ile birlikte gelen eklenti) Compose Specification yönergelerini izler. version: anahtarı kullanımdan kaldırılmıştır; oluşturucu onu atlar. En üst düzey anahtarlar services, networks, volumes, configs ve secrets şeklindedir.
Hizmet yapısı
Üretime yakın bir hizmet şöyle görünür:
services:
web:
image: nginx:1.27-alpine
restart: unless-stopped
ports:
- "80:80"
volumes:
- ./public:/usr/share/nginx/html:ro
depends_on:
app:
condition: service_healthy
networks:
- frontend
- backend
healthcheck:
test: ["CMD", "wget", "--spider", "-q", "http://localhost/health"]
interval: 30s
timeout: 5s
retries: 3
Volume: bind mount ve adlandırılmış volume
- Bind mount (
./app:/var/www) kapsayıcıyı konaktaki bir yola bağlar; değişiklikler anında yansıdığı için yerel geliştirme için idealdir. - Adlandırılmış volume (
pgdata:/var/lib/postgresql/data) Docker tarafından yönetilir ve herhangi bir konak yolundan bağımsız olarak kalıcıdır; veritabanları verm -rfile yanlışlıkla silmek istemediğiniz her şey için doğru seçimdir. - Anonim volume - kaçının. Yeniden başlatmalarda varlığını sürdürür ama
docker compose down -vkomutunda uyarı vermeden kaybolur.
Ağlar
Varsayılan olarak Compose, projenin adını taşıyan bir ağ oluşturur ve her hizmeti ona bağlar. Açık ağ bildirmek şu durumlarda yararlıdır:
- Bir veritabanını herkese açık bir hizmetten yalıtmak istiyorsanız.
- Mevcut altyapıya uymak için özel alt ağa sahip bir köprüye ihtiyacınız varsa.
- Kapsayıcıları zaten var olan harici bir ağa bağlamak istiyorsanız (
external: true).
Kaçınılması gereken yaygın hatalar
- Sürüm anahtarı çakışmaları. Baştaki
version: "3.8", healthcheckstart_intervalgibi yeni özelliklerin eski Compose’da çalışmasını engeller; oluşturucu sürüm anahtarını atlar. - Port tırnakları.
8080:80, bazı uç durumlarda YAML 60 tabanlı sayı olarak ayrıştırılır; oluşturucu port eşlemelerini her zaman tırnak içine alır. - Koda gömülü sırlar. Doğrudan compose.yml içine yazılan sırlar git’e işlenir. Bunları bir
env_fileveya platformun sır deposunda saklayın. - Koşulsuz depends_on. Düz
depends_on: [db], hizmetin hazır olmasını değil, kapsayıcının başlamasını bekler.condition: service_healthykullanın ve bağımlılığa bir healthcheck ekleyin.
Sık Sorulan Sorular
Güncel Compose Specification (Docker Compose V2 ile uyumlu). Dosya, modern Compose dosyalarının yazıldığı şekilde version: anahtarını atlar. Docker Compose V2.22 ve üzeri ile çalışır.
Bu sürümde form üzerinden eklenemez. Oluşturucu, görüntü, port ve volume içeren hizmet tanımlarına odaklanır. Üretilen YAML dosyasına kullanmadan önce elle ağ, ortam değişkeni, healthcheck ve başka anahtarlar ekleyebilirsiniz.
Hayır, bu araç compose.yml üzerine odaklanır. Dockerfile için, temel görüntü seçimini ve beş teknoloji için COPY/RUN sıralamasını yöneten Dockerfile Oluşturucu’yu kullanın.
Hayır. Hizmet tanımları yalnızca bu sayfada YAML dosyasını oluşturmak için kullanılır. Saklanmaz, yüklenmez veya paylaşılmaz.
İlgili Araçlar
ASCII Tablosu Referansı
NUL, LF ve DEL dahil her kod için ondalık, onaltılık, sekizlik ve ikili değerlerle HTML sayısal karakter başvurusu gösterimini sunan tam ASCII tablosu.
HTML Karakter Referansı
HTML varlıklarının aranabilir listesi; adlandırılmış ve sayısal kodlarıyla birlikte özel karakter ve semboller için tek tıkla kopyalama.
FPS Sayacı
requestAnimationFrame ile tarayıcı FPS değerini ölçün: yumuşatma, en düşük ve en yüksek kare hızı, uyarı eşiği ve isteğe bağlı grafik. Yerel çalışır, yükleme ve API yoktur.
Klavye kısayolları başvurusu
macOS, Windows ve Linux’ta VS Code, Chrome ve GNU Readline kullanan Bash için belgelenmiş varsayılan kısayolları arayın.
EditorConfig Oluşturucu
Girinti stili ve boyutu, satır sonu, karakter kümesi ve boşluk kurallarınızla bir .editorconfig dosyası oluşturarak IDE ve editörler arasında tutarlı biçimlendirme sağlayın.
E-posta Doğrulayıcı
Bir e-posta adresini doğrulayın: RFC 5322 sözdizimi kontrolü, canlı MX kaydı sorgulama, ayrıca yerel kısım, alan adı ve uzunluk bilgileri. Hiçbir e-posta gönderilmez.
Araç diğer dillerde mevcuttur
- Generator Docker Compose [ID]
- Docker Composeジェネレーター [JA]
- ตัวสร้าง Docker Compose [TH]
- Generator Docker Compose [PL]
- Gerador de Docker Compose [PT]
- Docker Compose 생성기 [KO]
- Docker Compose-generator [SV]
- Docker-Compose-Generator [DE]
- Trình tạo Docker Compose [VI]
- مولّد Docker Compose [AR]
- Generador de Docker Compose [ES]
- Générateur Docker Compose [FR]
- Docker Compose-generator [NL]
- Docker Compose Generator [EN]
- Generatore di Docker Compose [IT]
- Генератор Docker Compose [RU]
- Docker Compose 生成器 [ZH]