우분투 docker 실행이 안될 때(docker.service failed. See ‘journalctl -xe’ for details)

우분투 docker 실행이 안될 때(docker.service failed. See ‘journalctl -xe’ for details) 작동을 잘하던 우분투 서버가 리부팅 한 후에 갑자기 docker만 실행이 안되었다. 다음에도 똑같은 현상이 발생하면 빠르게 대처하기 위해 기록을 남겨 둔다. ~~# systemctl start docker 명령으로 docker가 실행이 안되고 도커를 실행해도 Active: failed 에러가 발생한다. ~~# systemctl start docker 명령어를 실행한 후에 아래와 같은 메시지가 나온다. docker.service failed. See ‘journalctl -xe’ for details docker 디버그모드로 […]

작동을 잘하던 우분투 서버가 리부팅 한 후에 갑자기 docker만 실행이 안되었다.
다음에도 똑같은 현상이 발생하면 빠르게 대처하기 위해 기록을 남겨 둔다.

실행안되는 상황 우분투 docker 실행이 안될 때(docker.service failed. See ‘journalctl -xe’ for details)
작동을 잘하던 우분투 서버가 리부팅 한 후에 갑자기 docker만 실행이 안되었다. 다음에도 똑같은 현상이 발생하면 빠르게 대처하기 위해 기록을 남겨 둔다. ~~# systemctl start docker 명령으로 docker가 실행이 안되고 도커를 실행해도 Active: failed 에러가 발생한다. ~~# systemctl start docker 명령어를 실행한 후에 아래와 같은 메시지가 나온다. docker.service failed. See ‘journalctl -xe’ for details docker 디버그모드로

~~# systemctl start docker

명령으로 docker가 실행이 안되고

● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since sáb 2016-05-14 15:17:31 CEST; 12min ago
Docs: https://docs.docker.com
Process: 22479 ExecStart=/usr/bin/docker daemon -H fd:// (code=exited, status=1/FAILURE)
Main PID: 22479 (code=exited, status=1/FAILURE)
may 14 15:17:30 Xenial docker[22479]: time="2016-05-14T15:17:30.103601523+02:00" level=info msg="New containerd process, pid: 22485\n"
may 14 15:17:31 Xenial docker[22479]: time="2016-05-14T15:17:31.149064723+02:00" level=error msg="devmapper: Unable to delete device: devicemapper: Can't set task name /dev/mapper/docker-8:6-2101297-pool"
may 14 15:17:31 Xenial docker[22479]: time="2016-05-14T15:17:31.149127439+02:00" level=warning msg="devmapper: Usage of loopback devices is strongly discouraged for production use. Please use --storage-opt dm.thinpooldev or use man docker to refer to dm.thinpooldev section."
may 14 15:17:31 Xenial docker[22479]: time="2016-05-14T15:17:31.153010028+02:00" level=error msg="[graphdriver] prior storage driver \"devicemapper\" failed: devicemapper: Can't set task name /dev/mapper/docker-8:6-2101297-pool"
may 14 15:17:31 Xenial docker[22479]: time="2016-05-14T15:17:31.153130839+02:00" level=fatal msg="Error starting daemon: error initializing graphdriver: devicemapper: Can't set task name /dev/mapper/docker-8:6-2101297-pool"
may 14 15:17:31 Xenial systemd[1]: docker.service: Main process exited, code=exited, status=1/FAILURE
may 14 15:17:31 Xenial docker[22479]: time="2016-05-14T15:17:31+02:00" level=info msg="stopping containerd after receiving terminated"
may 14 15:17:31 Xenial systemd[1]: Failed to start Docker Application Container Engine.
may 14 15:17:31 Xenial systemd[1]: docker.service: Unit entered failed state.
may 14 15:17:31 Xenial systemd[1]: docker.service: Failed with result 'exit-code'.

도커를 실행해도 Active: failed 에러가 발생한다.

~~# systemctl start docker

명령어를 실행한 후에 아래와 같은 메시지가 나온다.

docker.service failed. See ‘journalctl -xe’ for details

docker 디버그모드로 명령을 실행해본다.

~~# dockerd 또는 docker -D

긴 글씨가 화면을 가득채오고 화면위쪽으로 이동하다보면 아래와 같은 에러메시지가 나온다.

“에러메시지”
ERRO[2020-11-19T09:38:00.148463604+02:00] Failed to load container 4797b563d2a2c8898ec9246d9262defcfc205dc0d7669eaea94f48f678dad~~~
panic: page 25 already freed
Job failed with result Error: job stalled more than allowable limit~~~

기존 docker를 삭제

~~# sudo rm /etc/apparmor.d/docker
~~# sudo groupdel docker
~~# sudo rm -rf /var/run/docker.sock

docker 재설치

~~# sudo groupadd docker && sudo usermod -aG docker $USER && sudo apt update && sudo apt -y upgrade && sudo apt install -y apt-transport-https ca-certificates curl gnupg-agent software-properties-common && curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add – &&
sudo add-apt-repository “deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable” && sudo apt update && sudo apt install -y docker-ce docker-ce-cli containerd.io

docker가 정상적으로 작동하는지 확인

~~# systemctl status docker

docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2022-10-29 20:28:18 KST; 14h ago
TriggeredBy: ● docker.socket
Docs: https://docs.docker.com
Main PID: 1433 (dockerd)
Tasks: 322
Memory: 167.7M
CPU: 1min 48.064s
CGroup: /system.slice/docker.service
├─1433 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
├─1875 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 9000 -container-ip 172.1>
├─1881 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 9000 -container-ip 172.18.0.2>
├─1942 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 8100 -container-ip 172.2>
├─1951 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 8100 -container-ip 172.21.0.2>
├─1965 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 84 -container-ip 172.25.>
├─1977 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 84 -container-ip 172.25.0.2 ->
├─2007 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 19999 -container-ip 172.>
├─2016 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 19999 -container-ip 172.24.0.>
├─2031 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 4443 -container-ip 172.2>
├─2039 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 4443 -container-ip 172.26.0.2>
├─2054 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 82 -container-ip 172.26.>
├─2060 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 82 -container-ip 172.26.0.2 ->
├─2145 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 7880 -container-ip 172.2>
├─2153 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 7880 -container-ip 172.22.0.2>
├─2179 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 22301 -container-ip 172.>
├─2186 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 22301 -container-ip 172.20.0.>
├─2200 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 2288 -container-ip 172.2>
├─2207 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 2288 -container-ip 172.20.0.2>
├─2282 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 87 -container-ip 172.23.>
├─2377 /usr/bin/docker-proxy -proto tcp -host-ip :: -host-port 87 -container-ip 172.23.0.2 ->
정상작동되는상황 우분투 docker 실행이 안될 때(docker.service failed. See ‘journalctl -xe’ for details)
작동을 잘하던 우분투 서버가 리부팅 한 후에 갑자기 docker만 실행이 안되었다. 다음에도 똑같은 현상이 발생하면 빠르게 대처하기 위해 기록을 남겨 둔다. ~~# systemctl start docker 명령으로 docker가 실행이 안되고 도커를 실행해도 Active: failed 에러가 발생한다. ~~# systemctl start docker 명령어를 실행한 후에 아래와 같은 메시지가 나온다. docker.service failed. See ‘journalctl -xe’ for details docker 디버그모드로
docker가 정상 작동하는 것을 확인한다.

실행 중인 docker 컨테이너 확인

~~# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
위에 내용처럼 아무것도 실행중인 컨테이너가 없다.

docker 컨테이너를 실행한다.

기존에 docker 컨테이너 실행시 매핑된 볼륨과 데이터가 남아 있다면 컨테이너 실행만 제대로 해 주면 원래대로 작동한다.

만약 docker-compose.yml 파일로 docker 컨테이너를 실행했다면 작업시간은 훨씬 줄어 들 것이다.
기존에 docker 컨테이너 실행시 매핑된 폴더로 이동하여 자신의 상황에 맞게
~~# docker-compose up -d 명령을 실행하거나
~~# docker run 명령을 실행해서 컨테이너를 복구한다.

컨테이너 목록 우분투 docker 실행이 안될 때(docker.service failed. See ‘journalctl -xe’ for details)
작동을 잘하던 우분투 서버가 리부팅 한 후에 갑자기 docker만 실행이 안되었다. 다음에도 똑같은 현상이 발생하면 빠르게 대처하기 위해 기록을 남겨 둔다. ~~# systemctl start docker 명령으로 docker가 실행이 안되고 도커를 실행해도 Active: failed 에러가 발생한다. ~~# systemctl start docker 명령어를 실행한 후에 아래와 같은 메시지가 나온다. docker.service failed. See ‘journalctl -xe’ for details docker 디버그모드로
위로 스크롤