docker-compose start“오류 : 시작할 컨테이너가 없습니다.”


97

Docker 컨테이너 그룹을 시작하기 위해 Docker Compose (Windows의 Docker Machine 포함)를 사용하려고합니다.

내 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성공적으로 실행됩니다. 실행 docker-compose start하면 다음 출력이 표시됩니다.

Starting postgres ... done
Starting frontend ... done
Starting backend ... done
ERROR: No containers to start

도커 컨테이너가 실행되고 있지 않음을 확인했습니다. 컨테이너를 시작하려면 어떻게해야합니까?

답변:


150

여기서 문제는 실제로 컨테이너를 생성하지 않았다는 것입니다. 이러한 컨테이너를 실행하기 전에 만들어야합니다. docker-compose up대신 사용할 수 있습니다 . 그러면 컨테이너를 만든 다음 시작할 수 있습니다.

또는 실행 docker-compose create하여 컨테이너를 만든 다음를 실행하여 docker-compose start시작할 수 있습니다.


4
무엇을 docker-compose build합니까?
Prichmp

8
docker-compose builddocker-compose.yml 파일에서 이미지를 만듭니다.
JesusTinoco

11
참고 docker-compose create되지 않습니다. 대신 up명령을 사용하십시오 --no-start.
B12Toaster

23

오류를 본 이유는이다 docker-compose startdocker-compose restart컨테이너가 이미 존재한다고 가정합니다.

컨테이너를 빌드하고 시작하려면

docker-compose up

컨테이너 만 빌드하려면 다음을 사용하십시오.

docker-compose up --no-start

나중에 docker-compose {start,restart,stop}예상대로 작동합니다.

이전에는 docker-compose create명령이 있었지만 이제는 더 이상 사용되지 않고 docker-compose up --no-start.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.