linux 서버에 docker를 설치하고 실행하면 docker daemon을 stop 하거나 종료할 일이 거의 없지만
만약, local PC에서 docker desktop을 사용한다면 pc를 재부팅할 때마다 docker daemon을 종료할 경우도 생긴다.
이러한 경우 다시 docker daemon을 재시작하는 경우 내부에 docker container의 start 관련 동작을 설정할 수 있다.
restart option
docker run -d
--restart {option}
redis
- no
- Don't automatically restart the container (default)
- on-failure[:max-retries]
- container가 정상적으로 종료되지 않은 경우(exit code가 0이 아님)에만 재시작시킨다.
- max-retries도 함께 주면 재시작 최대 시도 횟수를 지정할 수 있다
- It doesn't restart the container if the daemon restarts.
- always
- 만약 container가 stop 되면 항상 재시작시킨다.
- exit code 상관없이 항상 재시작된다.
- unless-stopped
- container를 stop 시키기 전까지 항상 재시작시킨다.
- it isn't restarted even after Docker daemon restarts
docker compose 예시
version: '3.8'
services:
kafka:
image: 'wurstmeister/kafka:v1.0'
restart: always
container_name: kafka
ports:
- '9082:9082'
environment:
.....
관련 가이드 : https://docs.docker.com/config/containers/start-containers-automatically/