[docker] 중지 된 Docker 컨테이너를 다시 시작하는 방법

다음 명령을 사용하여 이미지에서 도커 컨테이너를 시작합니다.

$ docker run -d myimage /bin/bash -c "mycommand"

"mycommand"완료, 컨테이너는 (나는 그것이 정지 가정) 정지,하지만이 명령으로 볼 수 있기 때문에, 삭제되지 않습니다 :

$ docker ps -a

restart이 컨테이너에 동일한 매개 변수를 사용하고 생성 된 데이터를 유지 하는 방법 이 mycommand있습니까?



답변

예, 초기 명령이 실행을 완료하면 컨테이너가 중지됩니다.

다음을 사용하여 중지 된 컨테이너를 시작할 수 있습니다.

docker start container_name

명령 출력을 보려면 -ai옵션 을 추가해야합니다 .

docker start -ai container_name

추신. 거기에있다 docker restart container_name하지만 실행중인 컨테이너를 다시 시작하는 데 사용됩니다 – 내가 그 귀하의 경우가 아니라 생각합니다.


답변

먼저 $ docker ps -a모든 컨테이너 (실행중인 컨테이너와 중지 된 컨테이너)를 표시하므로 중지 된 컨테이너가 나열되지 않는 이유입니다.

둘째, 중지 된 컨테이너를 쉽게 시작할 수 있습니다.

$ docker start container_name

컨테이너가 시작되면 다음을 수행하여 명령을 실행할 수 있습니다.

$ docker exec -it container_name bash -c "mycommand"

컨테이너에서 만든 항목은 존재하는 한 컨테이너 안에 남아 있습니다. 컨테이너가 제거 된 경우에도 데이터를 유지하려면 볼륨을 사용할 수 있습니다 .


답변

그것은해야한다

$ docker restart container_id # OR
$ docker restart container_name


답변