Kiwi TCMS 升级到最新版本后如何恢复到早期版本
How to restore the Kiwi TCMS to earlier version after upgraded to latest
我已经运行Kiwi TCMS作为Docker容器,版本运行是9.0.1。现在看到最新的10.0版本了,想更新一下。不确定这是否会破坏现有数据。
所以,我已经按照它获取了数据库并上传了文件备份,
https://kiwitcms.org/blog/atodorov/2018/07/30/how-to-backup-docker-volumes-for-kiwi-tcms/
但是,如果最新版本无法按预期运行或出现任何问题,我该如何降级到旧版本映像?我找到了 docker 标签概念但不确定如何应用它?
你能确认以下将恢复到旧版本吗?
- 还原已备份的数据库文件和上传文件。
- 将 docker-compose 文件中的图像更改为旧图像?像我的情况一样,我可能想要提取版本 9.0.1 图像,因此更改 图像:kiwitcms/kiwi:9.0.1 有效吗?
web:
container_name: kiwi_web
depends_on:
- db
restart: always
image: kiwitcms/kiwi:9.0.1
或者我应该如何标记版本 9.0.1,然后恢复标记的版本,以防恢复最新升级?
But, how can I downgrade to an older version image, if the latest version does not work as expected or any problem comes? I found the docker tag concept and not sure how to apply it?
最简单的方法是销毁您不满意的实例,从头开始一个新实例(使用 v9.0.1)并从备份中恢复 files/DB。我假设您在升级前进行了备份。
image: kiwitcms/kiwi:9.0.1 works?
理论上可行,但实际上行不通,因为 Kiwi TCMS 上游不提供带有版本标记的容器映像。请参阅 https://kiwitcms.org/#subscriptions,行 Only latest releases
与 Versioned releases from kiwitcms/version
。
Or how should I tag version 9.0.1
这取决于您已经完成或未完成的事情,这可能是可能的,也可能是不可能的:
- 执行
docker images
,如果你看到
kiwitcms/kiwi latest 9f23186803d5 8 weeks ago 736MB
kiwitcms/kiwi <no tag> <another image hash> ...
这意味着 latest
指向 v10,而未标记的图像是您之前的图像,在您的例子中是 9.0.1。然后你可以使用 docker tag
命令来标记它并在 docker-compose.yml
文件中使用它。
- 如果您只看到
kiwitcms/kiwi:latest
图片,这意味着您已经从系统中删除了之前的图片。您无权访问它。您的选择是:
- 使用相同的 git 标签或
从源重建
- 如果恢复到旧版本至关重要,请购买订阅以访问私有
kiwitcms/version
存储库。
作为一种好的做法,您可以遵循以下 2 条建议:
使用“从备份恢复”技术或者“克隆 docker 图像”,这样您就可以升级和试验不同的 Kiwi TCMS 实例,而不是主要实例你使用的。如果您对最新版本感到满意,则可以升级主实例。请注意,通过“克隆 docker 图像”我的意思是使 运行 image/container 文件在不同的机器或可能是同一台主机上可用,但启动辅助 Kiwi TCMS 实例 + 辅助D B。 ATM 我不确定具体该怎么做,但 docker
本身或其他 Linux 工具应该能够在这里提供帮助。
docker tag
你本地的 kiwitcms/kiwi
图片当你 download/deploy/upgrade 它们时,你可以参考此时的版本。这将避免丢失旧图像。
额外提示:使用 docker tag
,您还可以提供自己的自定义图像名称,并可能将这些图像上传到您自己的 docker 存储库以供以后使用 access/backup 或在多个主机系统之间分发它们。
我已经运行Kiwi TCMS作为Docker容器,版本运行是9.0.1。现在看到最新的10.0版本了,想更新一下。不确定这是否会破坏现有数据。
所以,我已经按照它获取了数据库并上传了文件备份, https://kiwitcms.org/blog/atodorov/2018/07/30/how-to-backup-docker-volumes-for-kiwi-tcms/
但是,如果最新版本无法按预期运行或出现任何问题,我该如何降级到旧版本映像?我找到了 docker 标签概念但不确定如何应用它?
你能确认以下将恢复到旧版本吗?
- 还原已备份的数据库文件和上传文件。
- 将 docker-compose 文件中的图像更改为旧图像?像我的情况一样,我可能想要提取版本 9.0.1 图像,因此更改 图像:kiwitcms/kiwi:9.0.1 有效吗?
web: container_name: kiwi_web depends_on: - db restart: always image: kiwitcms/kiwi:9.0.1
或者我应该如何标记版本 9.0.1,然后恢复标记的版本,以防恢复最新升级?
But, how can I downgrade to an older version image, if the latest version does not work as expected or any problem comes? I found the docker tag concept and not sure how to apply it?
最简单的方法是销毁您不满意的实例,从头开始一个新实例(使用 v9.0.1)并从备份中恢复 files/DB。我假设您在升级前进行了备份。
image: kiwitcms/kiwi:9.0.1 works?
理论上可行,但实际上行不通,因为 Kiwi TCMS 上游不提供带有版本标记的容器映像。请参阅 https://kiwitcms.org/#subscriptions,行 Only latest releases
与 Versioned releases from kiwitcms/version
。
Or how should I tag version 9.0.1
这取决于您已经完成或未完成的事情,这可能是可能的,也可能是不可能的:
- 执行
docker images
,如果你看到
kiwitcms/kiwi latest 9f23186803d5 8 weeks ago 736MB
kiwitcms/kiwi <no tag> <another image hash> ...
这意味着 latest
指向 v10,而未标记的图像是您之前的图像,在您的例子中是 9.0.1。然后你可以使用 docker tag
命令来标记它并在 docker-compose.yml
文件中使用它。
- 如果您只看到
kiwitcms/kiwi:latest
图片,这意味着您已经从系统中删除了之前的图片。您无权访问它。您的选择是:- 使用相同的 git 标签或 从源重建
- 如果恢复到旧版本至关重要,请购买订阅以访问私有
kiwitcms/version
存储库。
作为一种好的做法,您可以遵循以下 2 条建议:
使用“从备份恢复”技术或者“克隆 docker 图像”,这样您就可以升级和试验不同的 Kiwi TCMS 实例,而不是主要实例你使用的。如果您对最新版本感到满意,则可以升级主实例。请注意,通过“克隆 docker 图像”我的意思是使 运行 image/container 文件在不同的机器或可能是同一台主机上可用,但启动辅助 Kiwi TCMS 实例 + 辅助D B。 ATM 我不确定具体该怎么做,但
docker
本身或其他 Linux 工具应该能够在这里提供帮助。docker tag
你本地的kiwitcms/kiwi
图片当你 download/deploy/upgrade 它们时,你可以参考此时的版本。这将避免丢失旧图像。额外提示:使用
docker tag
,您还可以提供自己的自定义图像名称,并可能将这些图像上传到您自己的 docker 存储库以供以后使用 access/backup 或在多个主机系统之间分发它们。