Watchtower 사용 시 Docker-compose로 생성한 컨테이너는 어떻게 되는건가요?
현재 DSM에 Portianer를 도커 컨테이너로 깔고 Stack으로 docker-compose를 작성하여 컨테이너를 관리중입니다. 하지만 생성하고 사용하는 것까지는 그렇다 치고 이제 슬슬 많아지는 컨테이너를 보면서 새로운 버전을 도커 허브를 보면서 일일히 넣어줘야하는 사실이 저는 지치게 만듭니다. 그래서 좀 찾다보니 컨테이너를 자동으로 업데이트해주는 Watchtower라는 이미지가 있어서 사용해보려고 찾아봤습니다. 정보를 찾던 중 docker cli로 실행한 내용에 대한 업데이트는 된다고 되어있지만 docker-compose로 관리중인 컨테이너에 대한 업데이트는 정상적으로 진행이 되는지 어떻게 되는지 알려주는 글이 없더군요.
그래서 docker-compsoe로 생성된 컨테이너도 정상적으로 환경설정 등 docker-compose에 있는 설정대로 업데이트가 되는지 아니면 Portainer에 업데이트가 가능한 기능이 들어가있는지 궁금합니다.
흠... 그러게요.. 궁금하긴한데요.
watchtower를 켜놓고 컨테이너 uptime을 확인하면되지않을까요??
https://github.com/containrrr/watchtower/issues/1019
https://forum.storj.io/t/watchtower-and-docker-compose/6321/4
아마 compose로 생성한 컨네이터도 업데이트 해주는거 같습니다!
watchtower 페이지에서도 compose 파일이 있기도 하구요.
그렇다면 docker-compose.yml을 업데이트 시켜주진 않는거죠? 아주 가끔 수정할 사항이 있을 수 있는데 구버전으로 돌아갈 것 같은데 이 부분은 어떻게 되는건가요?
최근에 watchtower 적용을 했는데요, docker-compose 로 만든 컨테이너 (Portainer 의 stack 으로 만든 컨테이너) 모두 이상없이 자동 업데이트 되었습니다.
docker-compose 파일은 따로 업데이트는 안되겠죠..? 본문에 있듯이 Portainer의 Stack으로 관리하고 있는데 수정했다가 구버전으로 돌아가는게 아닌가싶어서요..
컨테이너 올리는방식이 어떻든 상관없습니다.
그럴 것 같다는 느낌은 받았습니다. 하지만 제가 원하는건 docker-compose 파일까지 수정이 되는지 궁금한 것도 있습니다. 이건 따로 안해주겠죠?
수정안됩니다
그리고, watchtower의 대략적인 과정은 Found new image / Stop / Create / Remove 입니다
이미지만 교체해서 새로 올리는거라 보시면되겠네요.. 이에따라서 업타임도 초기화 됩니다
값변경같은게 필요하다면 portainer로 수정하시고.. 파일역시 별도로 수정해줘야합니다.
아쉽네요. 그렇다면 dockerhub의 lastest가 업데이트 되면 재생성되는 과정인가요? 그렇다면 dev로 올라온 이미지가 lastest로 태그되어있다면 업데이트 되겠죠? 이런 부분은 따로 정규표현식이나 따로 설정을 할 수 있을까요?
문서에서도 본적이 없어서 정규표현식같은건 안될거에요
docker-compose로 만들었어도 특정 버전 지정해서 작성하신게 아니라면 업데이트 되고,
버전 지정해서 compose하셨다면 유지됩니다
앗 그렇군요. 그렇다면 cli로 실행할 때도 버전 지정해놓으면 업데이트 안되는건가요? 제가 앵간해서는 lastest를 사용하지 않는데..
워치타워 자체가 도커허브에서 새로운 이미지 있으면 받고
재시작해주는 기능이 전부인지라..
latest 쓰면 버전 업 될때마다 새로운 이미지가 검색이 되어서 받는 구조입니다
버전 지정하면 워치타워에서 검색해도 계속 같은 이미지가 검색되니 딱히 변경이 안되는걸로 알고있습니다
cmt alert