İçeriğe geç
ToolMug

Docker Compose’dan docker run’a

Compose dosyanızı yapıştırarak her servis için eşdeğer docker run komutunu alın. Compose olmayan bir makinede konteyner başlatmak veya servisin tam olarak nasıl çalıştırıldığını kontrol etmek için kullanışlıdır.

Tarayıcınızda çalışır — girdiğiniz hiçbir şey yüklenmez

Docker Compose → docker run
Docker Compose
docker run

Nasıl kullanılır

  1. Soldaki alana Compose dosyasını yapıştırın veya “Örnek yükle”ye tıklayın.
  2. Sağda her servis için dosyadaki sırayla bir docker run komutu görünür.
  3. Dönüştürülmemiş alanlar (build, deploy veya depends_on gibi) için sarı notu kontrol edip komutları kopyalayın.

Seçeneklerin açıklaması

Desteklenen alanlar
image, container_name, command, entrypoint, ports, volumes (kısa ve uzun sözdizimi), environment, env_file, networks, network_mode, restart, user, working_dir, labels, logging, ulimits, healthcheck, kaynak sınırları ve daha fazlası.
Dönüştürülmeyen alanlar
build, deploy, depends_on, secrets ve configs gibi yalnızca Compose’a özgü alanlar notta listelenir. image olmayan servise yer tutucu görüntü adı verilir; önce kendiniz oluşturun.
Birden fazla ağ
docker run yalnızca --network ile bir ağa katılabilir; diğerlerini sonradan docker network connect ile bağlayın.

Örnek

Şuna benzer bir servis:

services:
  web:
    image: nginx:1.27
    ports:
      - "8080:80"
    volumes:
      - ./html:/usr/share/nginx/html:ro
      - data:/var/cache/nginx
    environment:
      TZ: UTC
    restart: unless-stopped
    depends_on: [db]

şuna dönüşür:

docker run -d \
  --name web \
  -p 8080:80 \
  -v ./html:/usr/share/nginx/html:ro \
  -v data:/var/cache/nginx \
  -e TZ=UTC \
  --restart unless-stopped \
  nginx:1.27

depends_on için docker run karşılığı yoktur; bu yüzden not kısmında listelenir. Başvurduğu servisleri doğru sırayla kendiniz başlatın. Göreli yol ./html, komutu çalıştırdığınız dizine göre çözülür; bu yüzden komutu o dizini içeren klasörden çalıştırın.

Sıkça sorulan sorular

Her komutta neden -d var?

Compose servisleri normalde arka planda çalıştırır (docker compose up -d), bu komutlar da aynı şekilde çalışır. Çıktıyı önde görmek için -d’yi kaldırın.

Adlandırılmış birim ve ağların önce var olması gerekir mi?

docker run eksik adlandırılmış birimleri otomatik oluşturur, ancak özel ağlar önce docker network create <name> ile oluşturulmalıdır.

Dosyam yükleniyor mu?

Hayır. Ayrıştırma ve dönüştürme tarayıcınızda çalışır.

Gizlilik

Bu araç tamamen tarayıcınızda çalışır. Dosyalarınız ve metinleriniz cihazınızda işlenir, sunucularımıza asla yüklenmez.

İlgili araçlar