Próbuję użyć Docker Compose (z Docker Machine w systemie Windows), aby uruchomić grupę kontenerów Docker.
Mój docker-compose.yml:
version: '2'
services:
postgres:
build: ./postgres
environment:
- POSTGRES_PASSWORD=mysecretpassword
frontend:
build: ./frontend
ports:
- "4567:4567"
depends_on:
- postgres
backend:
build: ./backend
ports:
- "5000:5000"
depends_on:
- postgres
docker-compose build
działa pomyślnie. Po uruchomieniu docker-compose start
otrzymuję następujące dane wyjściowe:
Starting postgres ... done
Starting frontend ... done
Starting backend ... done
ERROR: No containers to start
Potwierdziłem, że kontenery Dockera nie działają. Jak mam zacząć moje kontenery?
docker
docker-compose
Prichmp
źródło
źródło
docker-compose build
?docker-compose build
tworzy obrazy z pliku docker-compose.yml.docker-compose create
jest to przestarzałe. Zamiast tego użyjup
polecenia z--no-start
.Powodem, dla którego zobaczyłeś błąd, jest to
docker-compose start
idocker-compose restart
założenie, że kontenery już istnieją.Jeśli chcesz budować i uruchamiać kontenery, użyj
Jeśli chcesz tylko zbudować kontenery, użyj
Następnie
docker-compose {start,restart,stop}
powinno działać zgodnie z oczekiwaniami.Kiedyś istniało
docker-compose create
polecenie, ale teraz jest ono przestarzałe na rzeczdocker-compose up --no-start
.źródło