서버 운영 관리 [ Tip ]

Docker 수동으로 데몬 시작

1. Docker 데몬

도커 데몬(Docker daemon)은 도커 엔진의 핵심 구성 요소 중 하나로 도커 호스트에서 실행되는 백그라운드 프로세스입니다.

이 데몬은 CLI(Command Line Inrerface)에서 실행하는 명령어를 받아들이고, 도커 이미지를 다운로드하고, 컨테이너를 실행 및 관리하고, 네트워크와 볼륨 등을 관리합니다.


만약 도커 데몬에 문제가 발생하면 도커 호스트에서 컨테이너를 실행할 수 없는 상황이 발생합니다.

이슈 상황은 크게 다음과 같이 구분할 수 있습니다.




· 도커데몬 종료 또는 다운되었을 때


· 도커 데몬이 처리하지 못할 만큼 많은 작업이 있을 때

· 호스트 운영체제와 도커 데몬의 충돌 발생

· 도커 데몬의 설저이 잘못되어 있을 때




이 문서는 도커 데몬이 정상적으로 실행되고 있는지 확인하는 방법과 예외 상황 발생 시 도커 데몬을 수동으로 다시 시작하는 과정을 제공합니다.

참고로 본 매뉴얼의 내용은 CentOS7을 기준으로 합니다.



도커 데몬 상태 확인 방법


도커 데몬의 실행 상태는 'ps' 명령을 통해 확인할 수 있습니다.

ps -ef | grep docker



또는, 'service' 나 'systemctl' 명령으로 실행 상태를 파악할 수 있습니다.


service docker status


systemctl status docker




도커 재시작 방법

도커 데몬이 중단되었다면 하단 서술할 두 가지 방법으로 데몬을 실행시킬 수 있습니다.

※ 'docker info' 명령을 써도 상태확인이 가능합니다.





데몬의 중단은 'inactive'로 표시되는 상태값으로 확인할 수 있습니다.

※ 'Docker info' 명령을 써도 상태 확인이 가능합니다.




docker info


문제가 생겨 도커 데몬 실행이 중단되었다면 두 가지 방법으로 데몬을 다시 시작할 수 있습니다.



1. 'dockerd' 명령어로 데몬 실행  


'dockerd' 명령을 통해 도커 데몬을 포어그라운드(foreground) 모드로 실행하는 것입니다.

이 모드로 실행하면 로그 메시지가 터미널에 표시됩니다.



이를 통해 도커 데몬이 어떤 작업을 수행 중인지 확인할 수 있습니다.

※참고로 도커 데몬은 보통 백그라운드 모드로 실행됩니다. 



이 경우 도커 데몬은 백그라운드에서 실행되어 로그를 파일에 기록하고,

컨테이너와 이미지 등을 관리하는 작업을 수행합니다.



반면에 포어그라운드 모드로 실행하면 도커 데몬은 터미널에서 직접 실행되어,

작업 상태를 실시간으로 모니터링 할 수 있고, 사용자 입력을 받을 수 있습니다.

dockerd


 

 'dockerd' 명령어를 다시 실행하면 데몬이 재시작되고, 터미널에서 다음과 같이 실행 중인 상태를 확인할 수 있습니다.

만약 백그라운드 모드로 실행하고 싶다면 'dockerd' 명령어 끝에 '&'를 붙여서 실행해야 합니다.








2. 'Service' 나 'Systemctl' 명령어 실행

'Service' 혹은 'systemctl' 명령어를 통해 현재 중지된 도커 데몬을 실행하거나,

부팅 시 자동으로 시작되도록 설정 할 수 있습니다.


위 명령어로 데몬을 재시작되었다면 'docker info' 로 실행 상태를 확인하시기 바랍니다.

service dicker start (stop | restart) << 혹은


systemctl start docker