도커 데몬이 예기치 않게 종료 됨
Docker는 명백한 이유없이 종료되었으며 무슨 일이 있었는지 이해하려고합니다.
현재 docker 데몬은로드 된 서비스이며 종료 상태가 0 SUCCESS 인 비활성 상태입니다.
$ systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: inactive (dead) since Tue 2020-12-01 06:25:16 UTC;
Docs: https://docs.docker.com
Main PID: 2218 (code=exited, status=0/SUCCESS)
도커 로그를 보면 '종료'신호를 처리했기 때문에 이런 일이 발생했습니다.
$ journalctl -u docker.service | tail -25
Nov 30 18:30:21 ip-10-38-4-210 dockerd[2218]: time="2020-11-30T18:30:21.728694550Z" <redacted irrelevant>
Dec 01 06:25:05 ip-10-38-4-210 systemd[1]: Stopping Docker Application Container Engine...
Dec 01 06:25:05 ip-10-38-4-210 dockerd[2218]: time="2020-12-01T06:25:05.867748396Z" level=info msg="Processing signal 'terminated'"
Dec 01 06:25:16 ip-10-38-4-210 systemd[1]: Stopped Docker Application Container Engine.
그 당시에는 해당 호스트에 로그인 한 사용자가 없었으며 사용자가 명시 적으로 docker 데몬을 종료하지 않았습니다.
- 왜 이런 일이 발생하며 어떤 로그가 단서를 제공 할 수 있습니까?
- 종료시 자동으로 다시 시작되도록 dockerd를 구성 할 수 있습니까?
x86-64 기반 Ubuntu 16.04.6 LTS의 Docker 버전 18.09.7 (빌드 2d0083d)입니다.
systemd와의 관계는 Unix.stackexchange 에서 여기 에 요청됩니다 .
답변
Dec 01 06:25:05 ip-10-38-4-210 systemd[1]: Stopping Docker Application Container Engine...
이 시점에서 systemd는 docker에게 중지 요청을 보냈습니다.
Dec 01 06:25:05 ip-10-38-4-210 dockerd[2218]: time="2020-12-01T06:25:05.867748396Z" level=info msg="Processing signal 'terminated'"
Docker는 중지 요청을 수신하고 정상적으로 종료됩니다.
Dec 01 06:25:16 ip-10-38-4-210 systemd[1]: Stopped Docker Application Container Engine.
Systemd는 이제 중지가 완료되었음을보고합니다. 10 초는 docker container stop
명령을 정상적으로 처리하지 않고 10 초 후에 종료 된 다음 요청 처리를 완료하는 데 1 초가 지난 컨테이너에서 발생한 것일 수 있습니다 .
따라서 제공된 로그에서 dockerd 데몬이 요청 된대로 작동하며 systemctl stop docker
명령 을 전송 한 내용을 확인해야합니다 .
종료시 자동으로 다시 시작되도록 dockerd를 구성 할 수 있습니까?
dockerd는 systemd, systemd 컨트롤 dockerd를 제어하지 않으므로 systemd 측에서 문제를 해결해야합니다.
이 특정 경우에 systemd에게 docker 서비스를 중지하라고 지시하는 것은 컨테이너 패키지의 Ubuntu 버전 업데이트를 적용하는 Ubuntu 무인 업데이트 서비스 인 것으로 보입니다.
https://bugs.launchpad.net/ubuntu/+source/containerd/+bug/1870514
내 권장 수정 사항은이 문제가없는 것으로 보이는 업스트림 Docker 저장소에서 docker를 설치하는 것입니다.
https://docs.docker.com/engine/install/ubuntu/