3.2. 从 3.8.z 升级到 3.9.z
如果您要从 3.8.z → 3.9 升级独立 Red Hat Quay 部署,则强烈建议您从版本 10 → 13 升级 PostgreSQL。要从 10 → 13 升级 PostgreSQL,您必须关闭 PostgreSQL 10 数据库并运行迁移脚本来启动此过程。
使用以下步骤在独立 Red Hat Quay 部署中将 PostgreSQL 从 10 → 13 升级。
流程
输入以下命令缩减 Red Hat Quay 容器:
$ sudo podman stop <quay_container_name>
可选。如果使用 Clair,输入以下命令来停止 Clair 容器:
$ sudo podman stop <clair_container_id>
从 SCLOrg 的数据迁移流程运行 Podman 进程,允许从远程 PostgreSQL 服务器迁移数据: https://github.com/sclorg/postgresql-container/tree/master/13#data-migration
$ sudo podman run -d --name <migration_postgresql_database> 1 -e POSTGRESQL_MIGRATION_REMOTE_HOST=172.17.0.2 \ 2 -e POSTGRESQL_MIGRATION_ADMIN_PASSWORD=remoteAdminP@ssword \ -v </host/data/directory:/var/lib/pgsql/data:Z> 3 [ OPTIONAL_CONFIGURATION_VARIABLES ] rhel8/postgresql-13
$ mkdir -p /host/data/directory
$ setfacl -m u:26:-wx /host/data/directory
这可防止数据被新容器覆盖。
- 可选。如果使用 Clair,请为 Clair PostgreSQL 数据库容器重复上一步。
停止 PostgreSQL 10 容器:
$ sudo podman stop <postgresql_container_name>
完成 PostgreSQL 迁移后,使用步骤 3 中的新数据卷挂载运行 PostgreSQL 13 容器,例如: </
host/data/directory:/var/lib/postgresql/data> :$ sudo podman run -d --rm --name postgresql-quay \ -e POSTGRESQL_USER=<username> \ -e POSTGRESQL_PASSWORD=<password> \ -e POSTGRESQL_DATABASE=<quay_database_name> \ -e POSTGRESQL_ADMIN_PASSWORD=<admin_password> \ -p 5432:5432 \ -v </host/data/directory:/var/lib/pgsql/data:Z> \ registry.redhat.io/rhel8/postgresql-13:1-109- 可选。如果使用 Clair,请为 Clair PostgreSQL 数据库容器重复上一步。
启动 Red Hat Quay 容器:
$ sudo podman run -d --rm -p 80:8080 -p 443:8443 --name=quay \ -v /home/<quay_user>/quay-poc/config:/conf/stack:Z \ -v /home/<quay_user>/quay-poc/storage:/datastorage:Z \ {productrepo}/{quayimage}:{productminv}可选。重启 Clair 容器,例如:
$ sudo podman run -d --name clairv4 \ -p 8081:8081 -p 8088:8088 \ -e CLAIR_CONF=/clair/config.yaml \ -e CLAIR_MODE=combo \ registry.redhat.io/quay/clair-rhel8:v3.9.0
如需更多信息,请参阅 数据迁移。
3.2.1. 目标镜像
- quay : registry.redhat.io/quay/quay-rhel8:v3.9.0
- Clair: registry.redhat.io/quay/clair-rhel8:4.9.0
- PostgreSQL: registry.redhat.io/rhel8/postgresql-13:1-109
- redis : registry.redhat.io/rhel8/redis-6:1-110)