watchtower无法自动更新镜像的解决方法

watchtower能自动拉取最新的docker镜像并将其自动运行,能在很大程度上减少运维的工作量。

网上关于它的使用方法与教程一大堆,但是基本上都是最基本的使用方法,在此就不赘述了。

我使用的是阿里云的docker私有镜像服务,发现watchtower并不能自动获取最新的镜像,在翻阅了官方原文档后才发现,watchtower需要获取私有镜像服务的认证方式后才能进行访问,调用方式如下:

docker run -d --name watchtower --restart always -v /root/.docker/config.json:/config.json -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower -c

上面的代码中,/root/.docker/config.json文件,在docker登录阿里云的私有镜像服务后会自动生成,生成的位置应该是在登录后的根目录,用 ls -a 即可看到,你们按照具体情况自信替换路径。

这样,watchtower就能通过读取认证文件,从而能访问到阿里云的私有镜像仓库了。

顺便提一句,如果是Java项目的话,idea+jib+watchtower,能让你的开发变得超级舒爽!

 

参考资料:

https://containrrr.dev/watchtower/private-registries/

posted on 2020-07-17 18:45  chenyangsocool  阅读(1990)  评论(3编辑  收藏  举报