Docker Compose Oluşturucu
Bu stack'te ne çalışıyor
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 servise bir ad ve bir imaj verin, ardından port eşlemelerini, volume'ları, ortam değişkenlerini ve yeniden başlatma politikasını belirleyin. İki başlangıç servisi hazır gelir ve olduğu gibi ayağa kalkar.
-
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
Üretilen YAML'ı gözden geçirin: port eşlemeleri tırnak içindedir, adlandırılmış her volume dosyanın sonunda tanımlanır ve version anahtarı yazılmaz; güncel Compose spesifikasyonu böyle bekler.
-
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.
Formdan eklenemez. Form imaj, portlar, volume’lar, ortam değişkenleri ve yeniden başlatma politikasını kapsar ve servislerinizin bağladığı adlandırılmış volume’ların tamamını Compose’un istediği gibi tanımlar. Ağları ve health check’leri üretilen YAML’a elle ekleyin.
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
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.
Dosya Boyutu Dönüştürücü
Bayt, KB, MB, GB, TB ve ikili IEC birimleri (KiB, MiB, GiB, TiB) arasında, ondalık ve ikiliyi dilediğiniz gibi birleştirerek dönüşüm yapın.
Telefon numarası doğrulayıcı
Telefon numarasının ülkeye göre yapısını denetleyin; bölge, tür, E.164, uluslararası, ulusal ve RFC 3966 biçimlerini görün.
Kurgusal telefon numarası oluşturucu
Beş ülkede resmen ayrılmış aralıklardan 50 adede kadar kurgusal numara üretin.
Webpack Yapılandırma Oluşturucu
Kısa bir formdan webpack 5 için bir webpack.config.js oluşturun: entry, çıkış klasörü ve modu ayarlayın; ardından TypeScript, Babel, bir CSS yükleyici, HtmlWebpackPlugin ve bir dev sunucu açın.
Rastgele adres oluşturucu
Arayüz maketleri ve testler için üç basitleştirilmiş biçimde 1–20 adres benzeri kayıt oluşturun.
Araç diğer dillerde mevcuttur
- Docker Composeジェネレーター [JA]
- Docker Compose-generator [SV]
- Docker-Compose-Generator [DE]
- Generator Docker Compose [ID]
- مولّد Docker Compose [AR]
- Docker Compose-generator [NL]
- Générateur Docker Compose [FR]
- Generator Docker Compose [PL]
- Gerador de Docker Compose [PT]
- Generador de Docker Compose [ES]
- Trình tạo Docker Compose [VI]
- Docker Compose 생성기 [KO]
- ตัวสร้าง Docker Compose [TH]
- Генератор Docker Compose [RU]
- Docker Compose 生成器 [ZH]
- Docker Compose Generator [EN]
- Generatore di Docker Compose [IT]