Zawsze, gdy wykonuję
docker-compose start
docker-compose ps
Widzę moje kontenery ze stanem „UP”. Jeśli zrobię
docker-compose up -d
Zobaczę więcej szczegółów, ale będzie miał ten sam stan. Czy jest jakaś różnica między oboma poleceniami?
Zawsze, gdy wykonuję
docker-compose start
docker-compose ps
Widzę moje kontenery ze stanem „UP”. Jeśli zrobię
docker-compose up -d
Zobaczę więcej szczegółów, ale będzie miał ten sam stan. Czy jest jakaś różnica między oboma poleceniami?
Odpowiedzi:
docker-compose start
( https://docs.docker.com/compose/reference/start/ )
Uruchamia istniejące kontenery dla usługi.
docker-compose up
( https://docs.docker.com/compose/reference/up/ )
Kompiluje, (ponownie) tworzy, uruchamia i dołącza do kontenerów dla usługi.
O ile nie są już uruchomione, to polecenie uruchamia również wszystkie połączone usługi.
docker-compose upPolecenie agregatów wyjście każdego pojemnika (zasadniczo działadocker-compose logs -f). Kiedy polecenie kończy działanie, wszystkie kontenery są zatrzymywane. Uruchomieniedocker-compose up -duruchamia kontenery w tle i pozostawia je uruchomione.Jeśli istnieją kontenery dla usługi, a konfiguracja usługi lub jej obraz został zmieniony po utworzeniu kontenera,
docker-compose upprzejmuje zmiany, zatrzymując i odtwarzając kontenery (zachowując zamontowane woluminy). Aby zapobiec pobieraniu zmian przez funkcję Compose, użyj--no-recreateflagi.
Pełne odniesienie do CLI:
https://docs.docker.com/compose/reference/
W dockerze Często zadawane pytania jest to bardzo jasno wyjaśnione:
Jaka jest różnica między uruchomieniem, uruchomieniem i uruchomieniem?
Zwykle chcesz
docker-compose up. Służyupdo uruchamiania lub ponownego uruchamiania wszystkich usług zdefiniowanych wdocker-compose.yml. W domyślnym trybie „dołączonym” widoczne są wszystkie dzienniki ze wszystkich kontenerów. W trybie „odłączonym” (-d) funkcja Compose kończy działanie po uruchomieniu kontenerów, ale kontenery nadal działają w tle.
docker-compose runKomenda jest do prowadzenia „one-off” lub zadania „AdHoc”. Wymaga nazwy usługi, którą chcesz uruchomić, i uruchamia kontenery tylko dla usług, od których zależy działająca usługa. Służyrundo uruchamiania testów lub wykonywania czynności administracyjnych, takich jak usuwanie lub dodawanie danych do kontenera woluminu danych.runKomenda działa jakdocker run -tiw to, że otwiera interaktywny terminal do pojemnika i zwraca kod zakończenia pasujący kod zakończenia procesu w pojemniku.
docker-compose startPolecenie jest przydatne tylko do restartu pojemnikach, które zostały wcześniej utworzone, ale zostali zatrzymani. Nigdy nie tworzy nowych pojemników.