docker
i docker-compose
wydaje się, że współdziała z tym samym plikiem dokującym. Jaka jest różnica między tymi dwoma narzędziami?
źródło
docker
i docker-compose
wydaje się, że współdziała z tym samym plikiem dokującym. Jaka jest różnica między tymi dwoma narzędziami?
The docker
CLI jest wykorzystywany przy zarządzaniu indywidualnych pojemników na silniku Döcker. Jest to wiersz polecenia klienta, aby uzyskać dostęp do interfejsu API demona dokera.
Za pomocą docker-compose
cli można zarządzać aplikacją zawierającą wiele kontenerów. Przenosi także wiele opcji, które można wprowadzić na pliku docker run
cli do docker-compose.yml
pliku, aby ułatwić ich ponowne użycie. Działa jako „skrypt” frontendowy na tym samym interfejsie API dokera docker
, dzięki czemu możesz robić wszystko, co trzeba za docker-compose
pomocą docker
poleceń i wielu skryptów powłoki. Aby uzyskać więcej informacji, zapoznaj się z tą dokumentacją dotyczącą dokowania-tworzenia .
Aktualizacja dla trybu roju
Od czasu opublikowania tej odpowiedzi docker dodał drugie zastosowanie plików docker-compose.yml. Począwszy od wersji 3 yml formatu i okna dokowanego 1.13, możesz używać yml z dokowaniem-komponuj, a także do definiowania stosu w trybie roju dokera. Aby to zrobić, musisz użyć docker stack deploy -c docker-compose.yml $stack_name
zamiast tego, docker-compose up
a następnie zarządzać stosem za pomocą docker
poleceń zamiast docker-compose
poleceń. Mapowanie jest jeden do jednego między dwoma zastosowaniami:
Aby uzyskać więcej informacji na temat trybu roju, zobacz dokumentację trybu roju dokera .
docker
zarządza pojedynczymi pojemnikami
docker-compose
zarządza wieloma aplikacjami kontenerowymi
Korzystanie z kompilatora dokującego wymaga 3 kroków:
docker-compose up
aby uruchomić i uruchomić aplikacjęPoniżej znajduje się przykład docker-compose.yml zaczerpnięty z dokumentów dokera :
services:
web:
build: .
ports:
- "5000:5000"
volumes:
- .:/code
- logvolume01:/var/log
links:
- redis
redis:
image: redis
volumes:
logvolume01: {}
build: .
wweb
sekcji wskazuje lokalizację Dockerfile utworzonego w kroku 1.