Langsung ke konten
ToolMug

docker run ke Docker Compose

Tempel satu atau beberapa perintah docker run untuk mendapatkan compose.yaml yang setara. Port, volume, environment, jaringan, restart policy, batas memori dan CPU, logging, serta health check dikonversi; flag yang tidak bisa diterjemahkan dicantumkan.

Berjalan di browser Anda — tidak ada yang Anda masukkan yang diunggah

docker run → Docker Compose
docker run
Docker Compose

Cara menggunakan

  1. Tempel perintah docker run di sisi kiri. Perintah multi-baris dengan backslash di akhir dapat digunakan.
  2. File Compose muncul di sisi kanan; setiap perintah menjadi service.
  3. Periksa catatan kuning untuk flag yang tidak dikonversi, lalu salin atau unduh compose.yaml.

Penjelasan opsi

Flag yang didukung
Mencakup -p, -v, --mount, -e, --env-file, --name, --restart, --network, batas CPU dan memori, logging, health check, serta banyak flag lain.
Volume dan jaringan bernama
Volume bernama dideklarasikan di bagian volumes. Jaringan khusus dideklarasikan sebagai external true; jaringan host dan none menjadi network_mode.
Port
Pemetaan port selalu diberi tanda kutip karena YAML 1.1 dapat membaca nilai seperti 22:22 sebagai angka basis 60.
Flag yang diabaikan
-d dan --rm tidak memiliki padanan Compose dan dihapus. Flag yang tidak didukung, seperti --gpus, dicantumkan di catatan.

Contoh

docker run -d --name web --restart unless-stopped -p 8080:80 \
  -v ./html:/usr/share/nginx/html:ro -e TZ=Asia/Shanghai --memory 512m nginx:1.27

menjadi:

services:
  web:
    image: nginx:1.27
    container_name: web
    restart: unless-stopped
    mem_limit: 512m
    ports:
      - "8080:80"
    environment:
      - TZ=Asia/Shanghai
    volumes:
      - ./html:/usr/share/nginx/html:ro

Pertanyaan yang sering diajukan

Apakah file membutuhkan baris version?

Tidak. Docker Compose v2 saat ini tidak lagi memakai field version tingkat atas; jika ada, field itu diabaikan dengan peringatan.

Apakah password dalam environment diunggah?

Tidak. Parsing dan konversi berjalan di browser dan tidak mengirim data ke server.

Apakah argumen dengan tanda kutip didukung?

Ya. Tanda kutip tunggal, ganda, dan escape backslash mengikuti aturan shell, sehingga -e "MSG=hello world" tetap menjadi satu nilai.

Privasi

Alat ini berjalan sepenuhnya di browser Anda. File dan teks Anda diproses di perangkat Anda dan tidak pernah diunggah ke server kami.

Alat terkait