치다:
docker run -it centos /bin/bash
Ctrl+ D를 눌러 종료했습니다.
이 컨테이너를 계속 실행하고 싶지만 할 수 없습니다.
유일한 방법은
docker commit `docker ps -q -l` my_image
docker run -it my_image /bin/bash
내가 맞아? 더 좋은 방법이 있습니까? (나는 docker 0.8.0을 사용하고 있습니다.)
치다:
docker run -it centos /bin/bash
Ctrl+ D를 눌러 종료했습니다.
이 컨테이너를 계속 실행하고 싶지만 할 수 없습니다.
유일한 방법은
docker commit `docker ps -q -l` my_image
docker run -it my_image /bin/bash
내가 맞아? 더 좋은 방법이 있습니까? (나는 docker 0.8.0을 사용하고 있습니다.)
답변:
기존 컨테이너가 종료 된 후에도 다시 시작할 수 있으며 변경 사항은 계속 있습니다.
docker start `docker ps -q -l` # restart it in the background
docker attach `docker ps -q -l` # reattach the terminal & stdin
docker start `docker ps -q -l` && docker attach `docker ps -q -l`
docker start -i $(docker ps -q -l). ;-) 이름 지정은 선택된 컨테이너를보다 잘 제어하는 데 도움이됩니다. -l마지막을, 알았어 ...
`docker ps -q -l`비트가 확장입니다. 마지막으로 생성 된 (-l) 도커 컨테이너의 ID로 바뀝니다. -q는 일반적으로로 출력되는 다른 정보 (id를 포함)를 억제합니다 `docker ps`. ---- 참고 : Backtick은 인용 부호가 아니며 매우 특별한 의미가 있습니다. 백틱 사이에 입력하는 모든 내용은 기본 명령 전에 쉘에 의해 평가 (실행)됩니다 -unix.stackexchange.com/questions/27428/…
Created...시작할 수없는 상태로 바뀌는 것을 발견 했습니다 docker start .... 그러나 그것을 사용하여 다시 시작할 수 있습니다docker restart ...
-l"최신"도커 만 가져옵니다. 나와 같아서 docker ps -a시작해야 할 항목이 두 개 이상인 경우 위의 명령을로 변경하여 "all"(-a)을 다시 시작할 수 있습니다 docker start `docker ps -q -a`. -q그냥 "quiet"(출력 로깅이 아님)으로 만듭니다.
사용하다:
docker start $(docker ps -a -q --filter "status=exited")
종료 상태에있는 모든 컨테이너가 시작됩니다.
docker exec -it <container-id> /bin/bash
특정 컨테이너에 연결됩니다.
docker exec -it <container id> /bin/bash(또는 그냥 bash).
여러 개의 기억하기 쉬운 명령으로 수행하려면 다음을 수행하십시오.
docker ps -a
docker start -i <name/id>
-i플래그는 컨테이너의 표준 입력에 연결하는 고정 표시기 알려줍니다.
컨테이너를 연결하기 위해 대화식 쉘로 시작하지 않은 경우 쉘을 실행하려면 다음을 수행해야합니다.
docker start <name/id>
docker exec -it <name/id> /bin/sh
이것은 /bin/sh일반적으로 알파인 기반 이미지에서 사용할 수있는 쉘입니다.
Error response from daemon: Container <id> is not running
알려진 이름으로 정확히 하나의 Docker 컨테이너를 계속하려면 :
docker start `docker ps -a -q --filter "name=elas"`
docker start <name><name>은 컨테이너 이름입니다. 적어도 docker v19.03.8
다음과 같이하세요:
이 명령은 모든 컨테이너에 적용됩니다 (최종 종료 된 컨테이너뿐만 아니라). 이 방법은 시스템이 재부팅 된 후에도 작동합니다. 이를 위해이 명령은 "컨테이너 ID"를 사용합니다.
단계 :
이 명령을 사용하여 모든 도커를 나열하고 다시 시작하려는 컨테이너의 컨테이너 ID를 기록하십시오.
docker ps -a
컨테이너 ID를 사용하여 컨테이너를 시작하십시오.
docker start <container_id>
컨테이너를 연결하고 실행하십시오.
docker attach <container_id>
참고 : 리눅스에서 작동
docker start `docker ps -a | awk '{print $1}'`
'종료'상태 인 모든 컨테이너가 시작됩니다.