반응형

도커 이미지를 받고 컨테이너를 만들고 나면 나중에 해당 이미지가 업데이트됐을 때 컨테이너를 다시 만들어야 한다. 물론 대부분 다시 만들어도 데이터가 유지되도록 만들어져 있지만, 세팅 값을 기억하는 게 굉장히 귀찮다.

그래서 예전에 조금이라도 간편하게 할 수 있는 시놀로지 도커 이미지 업데이트 방법을 올렸는데 이것도 방법이 귀찮고 몇 번 해보니 제대로 업데이트된 건지도 의문이다.

그러다가 우연히 도커 이미지 업데이트를 자동화해주는 Watchtower라는 도커 이미지를 발견했다. 도커 소켓과의 연결 때문에 시놀로지 도커 상에서 생성할 순 없지만 딱 한 번 ssh에서 생성해 놓으면 앞으로 신경 쓸 필요가 없으므로 한번 해봄 직하다.

https://containrrr.dev/watchtower/

 

Watchtower

 

containrrr.dev

공식 홈페이지에 따르면 ssh에서 아래 명령어로 컨테이너를 생성하면 된다.


sudo docker run -d --name watchtower -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower

이렇게 도커 소켓만 매핑해주면 기본 세팅으로 하루에 한 번씩 도커 이미지 업데이트가 있는지 확인하고 업데이트가 있으면 자동으로 이미지를 업데이트하고 컨테이너도 그대로 재생성한다.

로컬 도커 말고 원격 도커를 사용하는 방법도 있고, 이외에 여러 가지 옵션이 있으니 공식 문서를 참고하면 된다. 아래는 내가 사용 중인 옵션값


sudo docker run -d --name watchtower -e TZ=Asia/Seoul -e WATCHTOWER_CLEANUP=true -e WATCHTOWER_REMOVE_VOLUMES=true -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower

별건 아니고 컨테이너 재생성 시 찌꺼기도 제거하는 옵션을 추가했다.

반응형

+ Recent posts