Omnikit
ProgramowaniePlikiFinanseWszystkie narzędzia
Ctrl K
Narzędzia dla programistówNarzędzia do plikówKalkulatory finansoweWszystkie narzędzia
Strona głównaNarzędzia dla programistówKonwerter docker run do docker compose
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский

Konwerter docker run do docker compose

programowanie

Zamiana poleceń docker run na compose.yaml: porty, wolumeny, sieci, health checks

Działa w przeglądarce. Wpisane dane nie są nigdzie wysyłane. Sprawdzono 16 października 2026.

Każda flaga docker run ma swój klucz Compose. Obraz pozostaje jako image, a 5 popularnych flag przenosi się bezpośrednio: -p staje się ports, -e – environment, -v – volumes, --restart – restart, a --name – container_name, natomiast -it odpowiada stdin_open i tty. Flagi takie jak -d i --rm nie mają odpowiednika, ponieważ docker compose up -d uruchamia usługi w tle.

Ta strona została przetłumaczona maszynowo z angielskiego oryginału. Tłumaczenie nie zostało jeszcze sprawdzone przez człowieka, dlatego wiążąca jest wersja angielska. Przeczytaj angielski oryginał

Dalej:
  • Nginx Config Generator A commented nginx server block for a reverse proxy, static site, SPA or redirect
  • Linter Dockerfile Sprawdź Dockerfile 55 regułami hadolint: przypięte wersje, użytkownik root, cache i więcej

Jak przekonwertować polecenie docker run na docker compose

1

Wklej jedno lub więcej poleceń docker run, razem z łamaniem wierszy ukośnikiem wstecznym, albo kliknij Wypróbuj przykład.

2

Przeczytaj compose.yaml po prawej: jedna usługa na polecenie, wolumeny i sieci zadeklarowane na dole.

3

Sprawdź uwagi o flagach bez odpowiednika w Compose, takich jak --rm.

4

Kliknij Pobierz, aby zapisać compose.yaml, a następnie uruchom docker compose up -d w tym samym folderze.

O narzędziu Docker Run to Compose Converter

Działające polecenie docker run to najlepszy punkt wyjścia dla pliku Compose, ale ręczne przepisywanie 10 flag sprzyja błędom. Po wklejeniu polecenia, lub kilku, powstaje compose.yaml z osobną usługą dla każdego, zgodny z Compose Specification, więc działa z docker compose up -d.

docker run compose.yaml
--name web container_name: web
-p 8080:80 ports: ["8080:80"]
-e KEY=value environment: ["KEY=value"]
-v data:/data volumes: oraz data: na najwyższym poziomie
--network shop-net networks: oraz shop-net: external: true
--restart unless-stopped restart: unless-stopped
-it stdin_open: true, tty: true
--gpus all deploy.resources.reservations.devices

Co jest rozpoznawane. Ponad 70 flag docker run, w każdym zapisie akceptowanym przez Docker CLI: --flag value, --flag=value, -p80:80 oraz grupowane krótkie flagi, takie jak -it lub -dp 3000:3000. Polecenia podzielone na wiersze za pomocą \ (bash), ^ (cmd) lub ` (PowerShell) są łączone, cudzysłowy są odczytywane tak, jak odczytuje je powłoka, a $(pwd) w wolumenie staje się ./, ponieważ Compose rozwiązuje ścieżki względem folderu pliku Compose.

Kilka poleceń naraz. Można wkleić cały skrypt konfiguracyjny: każde docker run staje się usługą, inne polecenia, takie jak docker network create, są pomijane, a usługi korzystające z tego samego obrazu otrzymują różne nazwy.

Nic nie jest ukryte. Flagi bez odpowiednika w Compose, takie jak --rm i -d, oraz każda flaga nieznana narzędziu są wymienione pod wynikiem, zamiast znikać. Porty i wartości środowiskowe są ujęte w cudzysłów, aby żaden parser YAML nie uznał 22:22 za liczbę. Plik nie zawiera klucza version:, który Compose Specification uznała za przestarzały.

Wszystko działa w przeglądarce; wklejone polecenia, które często zawierają hasła, nigdy nie są nigdzie wysyłane.

Najczęściej zadawane pytania

Jak przekonwertować polecenie docker run na docker compose?

Każdej fladze należy przypisać jej klucz Compose w ramach usługi: obraz jako image, -p jako ports, -e jako environment, -v jako volumes, --name jako container_name i --restart jako restart. Nazwane wolumeny i własne sieci otrzymują także wpis na najwyższym poziomie. Po wklejeniu polecenia tutaj powstaje cały compose.yaml, gotowy do docker compose up -d.

Czym stają się -it i -d w docker compose?

Flaga -i staje się stdin_open: true, a -t – tty: true, więc -it ustawia oba. Flaga -d nie ma klucza, ponieważ docker compose up -d uruchamia każdą usługę w tle. Aby później połączyć się z działającą usługą, można użyć docker compose attach lub docker compose exec z nazwą usługi.

Co dzieje się z --rm w docker compose?

W pliku nic: usługi Compose mają działać na stałe, więc nie ma klucza, który usuwa kontener po jego zatrzymaniu. Do jednorazowego zadania służy docker compose run --rm z nazwą usługi, które usuwa ten kontener po zakończeniu. Uwaga pod wynikiem informuje, kiedy --rm zostało pominięte.

Dlaczego sieć jest oznaczona jako external: true?

docker run z --network shop-net korzysta z sieci, która już istnieje. Oznaczenie external mówi Compose, aby dołączył do tej sieci zamiast tworzyć własną, dzięki czemu kontenery uruchomione na oba sposoby nadal mogą się komunikować. Aby Compose sam utworzył sieć i nią zarządzał, należy usunąć wiersz external: true.

Czy porty w pliku Compose należy ujmować w cudzysłów?

Tak, porty należy zapisywać jako ciągi znaków, np. "8080:80". Niektóre parsery YAML traktują dwie liczby połączone dwukropkiem jako liczbę w systemie sześćdziesiątkowym, więc 22:22 mogłoby zamienić się w 1342 i zepsuć mapowanie SSH. To narzędzie ujmuje w cudzysłów każdy port, wpis środowiska i ciąg wolumenu, aby plik wszędzie znaczył to samo.

Czy docker compose nadal potrzebuje klucza version?

Nie. Compose Specification uznała klucz version: za przestarzały, a nowsze wersje docker compose ostrzegają, gdy jest obecny. Pliki generowane tutaj zaczynają się od razu od services:, po którym następują volumes: i networks:, gdy polecenia używają nazwanych wolumenów lub własnych sieci.

Źródła

  • Docker Docs, docker container run (CLI reference)Every docker run flag and its meaning
  • Docker Docs, Compose file reference: servicesThe Compose key each flag maps to
  • Docker Docs, Compose file reference: volumesNamed volumes declared at the top level
  • Docker Docs, Compose file reference: networksExternal networks
  • POSIX.1-2024 Shell Command Language, 2.2 Quoting (The Open Group)How the pasted command is split into words

Ostatnia weryfikacja: 16 października 2026.

Stawki i przepisy się zmieniają; przed oparciem się na danej liczbie należy sprawdzić źródło.

Nadal coś nie działa? Zapytaj o narzędzie Konwerter docker run do docker compose a odpowiedzieć może każdy, kto zna odpowiedź. Konto nie jest potrzebne.

Powiązane narzędzia

Wszystkie narzędzia dla programistów
Kodowanie i dekodowanie Base64Tekst i pliki do Base64 i z powrotem, z trybem bezpiecznym dla URL i podglądem obrazówKonwerter znacznika czasu UnixZnaczniki czasu Unix na daty i daty na znaczniki czasu, w dowolnej strefie czasowejJSON na TypeScriptGeneruj interfejsy lub typy TypeScript z przykładowego JSONKonwerter CSV na JSONKonwertuj CSV na JSON i JSON na CSV, z podglądem tabeliKonwerter YAML na JSONKonwertuj YAML na JSON i JSON na YAML, z rozwiązanymi kotwicamiKoder i dekoder URLKodowanie procentowe i dekodowanie tekstu oraz adresów URL, z podglądem każdej części linkuKonwerter kolorówHEX, RGB, HSL, HWB, OKLCH i CMYK w obie strony, ze sprawdzaniem kontrastuKonwerter systemów liczbowychDwójkowy, ósemkowy, dziesiętny, szesnastkowy i dowolna podstawa do 36, dokładnie przy każdej wielkości, z kodem uzupełnień do dwóch
Czy to narzędzie było pomocne?
Omnikit

Małe zadania wykonywane w przeglądarce. Bezpłatnie, szybko i prywatnie. Pliki nigdy nie są przesyłane.

Pliki

  • Compress Image
  • Image to PDF
  • Merge PDF
  • Compress PDF
  • PDF to Word
  • Word to PDF

Programowanie

  • JSON Formatter & Validator
  • Base64 Encode & Decode
  • JWT Decoder, Verifier & Encoder
  • Password Generator
  • UUID Generator
  • Unix Timestamp Converter

Finanse

  • SIP Calculator
  • EMI Calculator
  • GST Calculator
  • FD Calculator
  • PPF Calculator
  • Lumpsum Calculator
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский
PoradnikiPytaniaO serwisieJak sprawdzamyBiblioteka prawa (beta)PrywatnośćRegulaminUjawnieniaKontaktMore: Exam practice (UGC NET Paper 1)Działa w przeglądarce. Nic nie jest przesyłane. © 2026 Omnikit (theomnikit.com)