Docker 컨테이너 자동 실행 매뉴얼
1. 명령어로 docker 자동 실행 등록
docker 컨테이너의 경우 ctrl+c로 컨테이너를 종료하거나 reboot 를 하게 되면
stop 상태가 됩니다. 명령어를 통해 컨테이너를 자동으로 재시작 할 수 있습니다.
docker run -it --restart unless-stopped --net=bridge --name docker-nginx nginx:latest /bin/bash
--restart=“ ” 컨테이너 내부의 프로세스 종료시 재시작 정책을 설정할 수 있습니다.
* no → 프로세스가 종료되더라도 컨테이너를 재시작하시 않습니다.
* on-failure → 프로레스 exit code 가 0 이 아닐 때 재시작합니다. 지정하지 않으면 계속해서 컨테이너를 재시작 합니다.
*always → 프로세스의 exit code 와는 관계없이 재시작 합니다
* unless-stopped → 부팅시 자동으로 컨테이너를 재시작 합니다. |
2. Systemd 를 이용한 자동 실행 등록
Centos 및 Ubuntu 15.04 이상에서는 systemd 를 이용한 자동 실행 등록이 가능합니다.
docker run -it --net=host --name=docker-centos centos:latest /bin/bash (Docker container 를 생성합니다.) |
서비스를 등록하기 위해 생성한 컨테이너의 이름을 입력 후 저장합니다.
|
docker 컨테이너를 부팅 시에도 실행할 수 있도록 systemctl 에 심볼릭 링크를 생성하여 설정합니다.
# systemctl enable docker-centos.service
|
서버를 reboot 한 후에도 docker 컨테이너들이 정상적으로 작동 중인 상태 확인할 수 있습니다.