debian 11升级 docker ce 版本和 docker-compose 版本

💡 原文中文,约1500字,阅读约需4分钟。
📝

内容提要

昨晚将immich服务端从v1.98.2升级到v1.106.4,升级过程中遇到了docker和docker-compose版本过低的问题。升级后,immich服务端成功升级到了v1.106.4。

🔎

延伸解读

版本兼容性:升级 Immich 前的关键检查

文章指出,Immich 新版本 compose 文件使用了 start_interval 语法,旧版 docker-compose 会报错。这提醒我们,升级应用前需确认 Docker 和 Compose 版本是否满足新要求,否则可能无法启动。作者将 docker-compose 从 v2.6.0 升级到 v2.27.0 后问题解决,说明保持工具链更新是避免兼容性问题的有效方法。

数据安全:备份与阅读更新日志的重要性

作者强调,Immich 的 release 描述提到许多用户不仔细阅读更新日志,尤其是包含 breaking changes 的版本,直接更新可能导致数据丢失。本次升级中,pgdata 挂载方式从 volume 改为直接路径映射,若未按新配置调整,可能引发问题。作者在升级前备份了 pgdata 和 model-cache,这是值得借鉴的预防措施。

升级操作:停止 Docker 服务与备份二进制文件

升级过程包括先停止 Docker daemon,再通过 apt 升级 docker-ce 等软件包。对于 docker-compose,作者选择下载官方二进制文件,并备份旧版本(v2.6.0)后再替换。这种手动升级方式适合需要特定版本或无法通过包管理器获取最新版的场景,同时备份旧文件便于回滚。

❓

Q&A

如何升级 Docker 和 Docker Compose 的版本?

首先停止 Docker daemon,然后使用 apt-get 更新并安装最新版本的 docker-ce 和 docker-compose,最后赋予 docker-compose 可执行权限。

升级 immich 服务端时遇到什么问题?

在升级过程中,遇到了 Docker 和 Docker Compose 版本过低的问题,导致使用新语法时检查语法时报错。

为什么要在升级前备份数据?

因为用户在更新时未仔细阅读更新日志,可能导致数据丢失,因此备份 pgdata 和 model-cache 数据是必要的。

immich 服务端的最新版本是什么?

immich 服务端的最新版本是 v1.106.4。

升级前使用的 Docker 和 Docker Compose 版本是多少?

升级前使用的 Docker 版本为 20.10.17,Docker Compose 版本为 v2.6.0。

如何避免在升级过程中数据丢失?

在升级前仔细阅读更新日志并备份重要数据,可以有效避免数据丢失。

🏷️

标签

➡️

继续阅读