升级可以使用 Watchtower 试试

拉取镜像

  1. docker pull containrrr/watchtower

更新思源可用配置

  1. docker run \
  2. --detach \
  3. --name watchtower \
  4. --volume /var/run/docker.sock:/var/run/docker.sock \
  5. containrrr/watchtower \
  6. --cleanup \
  7. --interval 3600 \
  8. --include-restarting \
  9. --include-stopped

默认配置

  1. docker run \
  2. -d \
  3. --name watchtower \
  4. -v /var/run/docker.sock:/var/run/docker.sock \
  5. containrrr/watchtower
  • 默认自动更新所有容器

自动更新指定的容器

  1. docker run \
  2. -d \
  3. --name watchtower \
  4. -v /var/run/docker.sock:/var/run/docker.sock \
  5. containrrr/watchtower \
  6. nginx redis

仅运行一次

  1. docker run \
  2. --name watchtower \
  3. -v /var/run/docker.sock:/var/run/docker.sock \
  4. containrrr/watchtower \
  5. --run-once
  • 更新后自行删除 watchtower 容器

更新后删除旧镜像

  1. docker run \
  2. -d \
  3. --name watchtower \
  4. -v /var/run/docker.sock:/var/run/docker.sock \
  5. containrrr/watchtower \
  6. --cleanup

设置轮询间隔

  1. docker run \
  2. -d \
  3. --name watchtower \
  4. -v /var/run/docker.sock:/var/run/docker.sock \
  5. containrrr/watchtower \
  6. --interval 3600
  1. docker run \
  2. -d \
  3. --name watchtower \
  4. -v /var/run/docker.sock:/var/run/docker.sock \
  5. containrrr/watchtower \
  6. -i 3600
  • 轮询间隔以秒为单位

同时更新停止的容器

  1. docker run \
  2. -d \
  3. --name watchtower \
  4. -v /var/run/docker.sock:/var/run/docker.sock \
  5. containrrr/watchtower \
  6. --include-stopped

更新停止的容器后启动容器

  1. docker run \
  2. -d \
  3. --name watchtower \
  4. -v /var/run/docker.sock:/var/run/docker.sock \
  5. containrrr/watchtower \
  6. --include-stopped \
  7. --revive-stopped

同时更新正在重启的容器

  1. docker run \
  2. -d \
  3. --name watchtower \
  4. -v /var/run/docker.sock:/var/run/docker.sock \
  5. containrrr/watchtower \
  6. --include-restarting