文章插图
一、前因闲来没事 , 想着升级下树莓派中的应用 , 没曾想 , 全是最新的 , 害我以为被黑客眷顾 , 帮我升级了 。
多方查证 , 才知道 , 是上次搭建的photoprism搞的鬼 , 不过也不全是它的锅 , 只是它的yml文件中用了Watchtower这个镜像 。
Watchtower会监控你的所有Docker镜像 , 如果远程有新镜像会自动荡下来 , 并用你的启动参数重新启动 。
二、安装为了避免冲突 , 先将photoprism中的删掉 , 再重新新建个docker-compose.yml , 内容如下:
version: "3"services:watchtower:restart: unless-stoppedimage: containrrr/watchtowercontainer_name: watchtowerenvironment:WATCHTOWER_CLEANUP: "true"WATCHTOWER_SCHEDULE: "0 0 3 * * *"TZ: Asia/Shanghaivolumes:- "/var/run/docker.sock:/var/run/docker.sock"#command: mariadb redis
官方文档参数在这里:https://containrrr.dev/watchtower/arguments/
WATCHTOWER_CLEANUP:自动清理旧镜像三、总结有人不理解docker是啥玩意 , 你把它想成你手机或者电脑里面的应用即可 , 而这个watchtower就是配置了闲时自动更新 。
WATCHTOWER_SCHEDULE:何时检测 , cron表达式 , 类似的参数还有 WATCHTOWER_RUN_ONCE、WATCHTOWER_POLL_INTERVAL
TZ:时区
如果需要指定更新某些镜像 , 在command后面添加
其余参数见官方文档
收工 。
【Docker容器自动更新神器】
推荐阅读
- .NET 6新特性试用 | System.Text.Json序列化代码自动生成
- Python如何构建自动在线刷视频
- 容器如何使用tini作为启动进程
- 文档如何自动化部署到线上环境「每个前端都可以拥有自己的博客」
- 一文详解Liquibase如何自动化数据库脚本部署
- Docker如何构建mysql主从?
- 自动挡汽车该如何正确启动?
- 太变态了,这个Excel功能居然能自动合并表格
- 手动变速器和自动变速器有什么区别
- 6个实用的 Python 自动化脚本,你学会了吗?