Langkau ke kandungan
ToolMug

docker run kepada Docker Compose

Tampal satu atau lebih arahan docker run untuk mendapatkan compose.yaml yang setara. Port, volum, pembolehubah persekitaran, rangkaian, dasar mula semula, had memori dan CPU, log serta pemeriksaan kesihatan ditukar; bendera yang tidak boleh ditukar disenaraikan.

Berjalan dalam pelayar anda — apa yang anda masukkan tidak dimuat naik

docker run → Docker Compose
docker run
Docker Compose

Cara menggunakan

  1. Tampal arahan docker run di sebelah kiri. Arahan berbilang baris dengan garis condong songsang di hujung boleh digunakan; asingkan beberapa arahan dengan baris baharu, koma bernoktah atau &&.
  2. Fail Compose muncul di sebelah kanan. Setiap arahan menjadi servis yang dinamakan mengikut --name atau imej jika tiada nama.
  3. Semak nota kuning bagi perkara yang tidak ditukar, kemudian salin atau muat turun compose.yaml dan jalankan docker compose up -d.

Penerangan pilihan

Bendera yang disokong
-p, -v, --mount, -e, --env-file, --name, --restart, --network, -w, -u, -h, --entrypoint, -l, --add-host, --dns, --cap-add/drop, --device, -m, --cpus, --shm-size, --ulimit, --log-driver/--log-opt, --health-*, -i, -t, --privileged, --init, --read-only dan banyak lagi.
Volum dan rangkaian bernama
Volum bernama seperti pgdata:/data diisytiharkan di bawah volumes peringkat teratas. Rangkaian tersuai diisytiharkan sebagai external true, bermakna rangkaian sedia ada digunakan. Rangkaian host dan none menjadi network_mode.
Port
Pemetaan port sentiasa diletakkan dalam petikan. YAML 1.1 membaca nilai seperti 22:22 sebagai nombor asas-60, jadi dokumentasi Docker menyarankan port ditulis sebagai rentetan.
Bendera diabaikan
-d dan --rm tiada padanan dalam Compose lalu dibuang. Bendera tidak disokong seperti --gpus disenaraikan dalam nota.

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

Soalan lazim

Adakah fail perlu baris version?

Tidak. Docker Compose semasa (v2) tidak lagi menggunakan medan version peringkat teratas; jika ada, ia diabaikan dengan amaran.

Adakah kata laluan dalam pembolehubah persekitaran dimuat naik?

Tidak. Penghuraian berjalan dalam pelayar dan tiada apa dihantar ke pelayan.

Adakah hujah berpetikan disokong?

Ya. Petikan tunggal, petikan berganda dan escape garis condong songsang mengikut peraturan shell, jadi -e "MSG=hello world" mengekalkan keseluruhan nilai.

Privasi

Alat ini berjalan sepenuhnya dalam pelayar anda. Fail dan teks anda diproses pada peranti anda dan tidak pernah dimuat naik ke pelayan kami.

Alat berkaitan