使用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
相关推荐
nuo5342021 小时前
基础 3 —— Docker 的常用命令
docker·容器
oushaojun22 小时前
deepseek教我什么是docker
运维·docker·容器
jieyucx2 小时前
Windows11 & Linux 环境Docker部署与镜像拉取效率优化实战指南
linux·运维·docker
从此以后自律3 小时前
项目 Docker + Nginx 云端完整部署细节
nginx·docker·容器
donoot19 小时前
一次 Nginx 502 问题的深度排查:从 SELinux 到容器网络
nginx·docker·selinux·反向代理·502 bad gateway
Sagittarius_A*21 小时前
Docker:渗透前置容器化核心基础
运维·安全·docker·容器
名字还没想好☜1 天前
Docker 多阶段构建:把镜像从 1.2GB 砍到 15MB
运维·docker·容器·多阶段构建·镜像优化
生活爱好者!1 天前
NAS还能玩游戏?部署一款 WebGL 3D 赛车小游戏
游戏·docker·容器·玩游戏
曦月合一1 天前
本地电脑部署docker,及各种组件(nginx、mysql、redis、mongo、minio、java)
docker·windows10 专业版
hj2862511 天前
Docker 核心知识点整理(网络 + Dockerfile + 原理 + 命令)
网络·docker·容器