Lewati ke konten utama

Konverter Docker Run ke Compose

Ubah perintah `docker run …` panjang menjadi definisi layanan docker-compose.yml yang setara — port, volume, lingkungan, jaringan, health-check, batas sumber daya, dan banyak lagi. Berjalan seluruhnya di browser Anda.

Input

Output

docker-compose.yml
 
Apakah ini membantu?

Cara lain menggunakan alat ini

REST API

curl -X POST https://api.iotools.cloud/v1/tool/docker-run-to-compose-converter \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "dockerRunInput": "docker run -d \\\n  --name nginx-proxy \\\n  --resta…"
  }'

Ganti dengan kunci Anda sendiri dari akun Anda. Bidang alat menjadi isi permintaan — tanpa pembungkus.

Tanyakan ke agen AI

Use the IOTools `docker-run-to-compose-converter` tool (Docker Run to Compose Converter) on this input:

YOUR_INPUT_HERE

Tempelkan ini ke agen mana pun yang terhubung ke server MCP IOTools, lalu tambahkan input Anda.

Widget sematan

<iframe
  src="https://iotools.cloud/embed/docker-run-to-compose-converter/"
  width="100%" height="520" frameborder="0" scrolling="no" loading="lazy"
  title="Konverter Docker Run ke Compose — iotools.cloud"
  sandbox="allow-scripts allow-forms allow-same-origin allow-downloads allow-popups allow-popups-to-escape-sandbox"
  allow="clipboard-write"
  style="width:100%;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden"></iframe>
<script src="https://iotools.cloud/embed.js" async></script>

Tempelkan ini di halaman Anda sendiri — gratis, tanpa kunci, cukup tautan balik.

Biaya per panggilan API/MCPMulai dari 5 kredit
Butuh kredit lebih?Lihat harga

Juga tersedia melalui

Panduan

Konverter Docker Run ke Compose mengubah perintah docker run … panjang menjadi definisi layanan docker-compose.yml yang setara. Tempel perintah yang biasanya Anda ketik di terminal dan dapatkan file Compose siap simpan — tidak perlu lagi menerjemahkan puluhan flag -p, -v, dan -e ke dalam YAML.

Dibuat untuk saat Anda menemukan kontainer dalam README proyek, blog post, atau riwayat shell dan ingin mengelolanya secara deklaratif. File Compose lebih mudah untuk versioning, review, dan restart daripada dinding flag command-line.

Cara menggunakannya

  1. Tempel perintah lengkap Anda ke dalam kotak Perintah Docker Run, misalnya docker run -d --name web -p 8080:80 -v ./html:/usr/share/nginx/html nginx:alpine.
  2. Output docker-compose.yml diperbarui saat Anda mengetik.
  3. Salin atau download sebagai docker-compose.yml, lalu jalankan docker compose up -d di direktori tersebut.

Perintah multi-baris dengan backslash trailing (\) tempel dengan baik — konverter menggabungkan baris kelanjutan sebelum parsing.

Apa yang dikonversi

Alat ini memahami flag yang benar-benar digunakan orang: -p/--publish (port), -v/--volume (volume), -e/--env dan --env-file (lingkungan), --name, --restart, --network, -l/--label, --user, --workdir, --entrypoint, capability (--cap-add/--cap-drop), --device, --dns, --add-host, tmpfs, --ulimit, --sysctl, dan flag health-check (--health-cmd, --health-interval, dan teman-temannya). Flag sumber daya — --memory, --memory-reservation, --cpus, --cpu-shares — dipancarkan di bawah blok deploy.resources. Argumen gambar apa pun setelah nama gambar menjadi command layanan.

FAQ

Apakah itu menghasilkan kunci versi?

Tidak. Bidang version: tingkat atas sudah usang dalam Compose Specification saat ini dan dengan sengaja dihilangkan. docker compose modern mengabaikannya.

Bagaimana jaringan bernama ditangani?

Nilai --network host, none, bridge, atau container:<id> dipetakan ke network_mode. Nama jaringan lain apa pun diperlakukan sebagai jaringan yang ditentukan pengguna: ditambahkan ke daftar networks: layanan dan dideklarasikan di bagian bawah file sebagai external: true, dengan asumsi Anda membuatnya sebelumnya dengan docker network create.

Mengapa --cpu-shares dibagi dengan 1024?

Bagian CPU Docker adalah bobot relatif di mana 1024 sama dengan satu CPU penuh. reservations.cpus Compose mengharapkan jumlah core fraksional, jadi nilai dikonversi (misalnya 512 menjadi "0.50").

Apakah itu menangani flag yang tidak saya kenali?

Flag tanpa padanan Compose (seperti --rm atau -d) cukup dihilangkan, karena mereka menggambarkan bagaimana CLI dijalankan bukan layanan itu sendiri. Jika input tidak dimulai dengan docker run, Anda mendapatkan komentar singkat yang menjelaskan itu bukannya file yang rusak.

Apakah itu validator YAML penuh?

Tidak — itu memancarkan file Compose yang bersih dan dikutip dengan benar tetapi tidak skema-validasi terhadap Compose Specification. Tinjau hasilnya sebelum deploy.

Privasi

Konversi berjalan sepenuhnya di browser Anda. Perintah Anda — termasuk rahasia apa pun dalam variabel lingkungan atau label — tidak pernah diunggah ke server. Karena itu, hindari menempel kredensial produksi, dan perlakukan file yang dihasilkan sama seperti yang Anda perlakukan dengan perintah asli.

dockerdocker-composecomposedocker runyamldevopscontainersconverter

Suka alat-alatnya? Hilangkan iklannya.

Satu kali pembayaran menghapus semua iklan dari akun Anda, selamanya. Tanpa langganan, tanpa pelacakan.