![dockerd를 통해 컨테이너가 자동으로 시작되지 않도록 비활성화하는 방법(docker가 실행되지 않을 때)?](https://linux55.com/image/117434/dockerd%EB%A5%BC%20%ED%86%B5%ED%95%B4%20%EC%BB%A8%ED%85%8C%EC%9D%B4%EB%84%88%EA%B0%80%20%EC%9E%90%EB%8F%99%EC%9C%BC%EB%A1%9C%20%EC%8B%9C%EC%9E%91%EB%90%98%EC%A7%80%20%EC%95%8A%EB%8F%84%EB%A1%9D%20%EB%B9%84%ED%99%9C%EC%84%B1%ED%99%94%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95(docker%EA%B0%80%20%EC%8B%A4%ED%96%89%EB%90%98%EC%A7%80%20%EC%95%8A%EC%9D%84%20%EB%95%8C)%3F.png)
dockerd
유지 관리가 필요한 시스템이 있는데 docker 명령을 실행할 수 있도록 부팅하고 싶습니다 .하지만나기존 컨테이너가 자동으로 시작되는 것을 원하지 않습니다.. 예를 들어 유지 관리 모드 또는 시스템 업그레이드 상황에서 유용합니다. 이 문제를 해결할 수 있는 옵션을 찾을 수 없습니다.
답변1
실제 답변은 아니지만 해결 방법은 다음과 같습니다.
디스플레이 용기 RestartPolicy
:
find /var/lib/docker/containers/ -type f -name hostconfig.json \
-exec grep -o '"RestartPolicy[^}]*}' {} +
이러한 정책을 "안함"으로 변경하기 위해 다음 스크립트를 사용했습니다.
find /var/lib/docker/containers/ -type f -name hostconfig.json \
-exec grep -o '"RestartPolicy[^}]*}' {} + |
grep -v '"never"' |
cut -d: -f1
xargs -r \
sed -i 's/\("RestartPolicy":{"Name":\)"[^"]*"/\1"no"/'
그런 다음 docker를 시작하면 모든 컨테이너가 비활성화됩니다. 그러나 자동 시작 설정 재설정은 수동으로 수행해야 합니다.