使用watchtower更新docker容器

更新方式

定时更新(默认)

执行以下命令后,Watchtower 会在后台每 24 小时自动检查并更新所有运行中的容器:

bash 复制代码
docker run -d \
  --name watchtower \
  -v /var/run/docker.sock:/var/run/docker.sock \
  containrrr/watchtower

手动立即更新

添加 --run-once 参数启动临时容器,检查更新后自动退出,适合按需触发:

bash 复制代码
docker run --rm \
  -v /var/run/docker.sock:/var/run/docker.sock \
  containrrr/watchtower --run-once

更新指定容器

在命令末尾添加需要监控的容器名称,多个容器用空格分隔。例如仅监控 nginxredis 容器:

bash 复制代码
docker run -d \
  --name watchtower \
  -v /var/run/docker.sock:/var/run/docker.sock \
  containrrr/watchtower nginx redis

简化命令

手动更新时,如果使用上面的命令未免太麻烦了,所以我们可以将更新命令设置为别名:

将下面的命令放到对应shell的环境文件中(比如bash对应~/.bashrc,zsh对应~/.zshrc

bash 复制代码
alias update-container="docker run --rm -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower --run-once"

编辑完环境文件后,重新打开命令窗口,或使用source ~/.bashrcsource ~/.zshrc加载命令。 然后就可以通过下面的方式更新容器了:

bash 复制代码
update-container 容器标识

比如:

bash 复制代码
update-container nginx-ui-latest
相关推荐
新时代牛马1 小时前
单机 docker run 管不住了?从编排需求、期望状态到调度/自愈闭环讲透
运维·docker·容器
binqian1 小时前
Docker Desktop(WSL2 后端)三层网络互通技术文档
网络·docker·容器
LuiChun2 小时前
与精神病患者的日常探讨20260913
docker
闲云野鹤在人间2 小时前
Docker入门|第1章 容器生态系统完整解析
运维·服务器·docker·容器·centos
KIDULT°4 小时前
Docker 从 0 入门|吃透容器生态、架构与 Dockerfile 实战
docker·容器·架构
putItInYourHand5 小时前
Docker Compose 部署 Mosquitto MQTT Broker 完整实战指南
运维·docker·容器
生活爱好者!14 小时前
哇!影视新玩法!docker部署NEOWATCH NAS
运维·docker·容器
cpolar技术支持17 小时前
Docker 容器启动失败怎么查?端口、日志、权限与网络排障完整教程
linux·docker·容器·cpolar·网络排障
一技安身19 小时前
【大模型】Win11 部署 DeepSeek+ RAGFlow0.27.2 (Ollama方案,断网可用)
docker·ai·语言模型
新时代牛马20 小时前
docker run 起不来?从dockerd、containerd 到runc 一条线讲透
运维·docker·容器