This document describes how to upgrade one or more Quay Enterprise containers.
The database is the "source of truth" for Quay, and some version upgrades will trigger a schema update and data migration. Such versions are clearly documented in the Quay Enterprise release notes.
Backup the database before upgrading Quay Enterprise. Once the backup completes, use the procedure in this document to stop the running Quay Enterprise container, start the new container, and check the health of the upgraded Quay Enterprise service.
docker login quay.io
Check the list of Quay Enterprise releases for the latest version.
docker pull quay.io/coreos/registry:RELEASE_VERSION
Replace RELEASE VERSION
with the desired version of Quay Enterprise.
docker ps -a
The Quay Enterprise image will be labeled quay.io/coreos/registry
.
docker stop QE_CONTAINER_ID
docker run --restart=always -p 443:443 -p 80:80 --privileged=true \
-v /local/path/to/config/directory:/conf/stack \
-v /local/path/to/storage/directory:/datastorage \
-d quay.io/coreos/registry:RELEASE_VERSION
Replace /local/path/to/config/directory
and /local/path/to/storage/directory
with the absolute paths to those directories on the host. Replace RELEASE_VERSION
with the desired Quay Enterprise version.
Rarely, but occasionally, the new Quay Enterprise version may perform a database schema upgrade and migration. Versions requiring such database migrations will take potentially much longer to start the first time. These versions are clearly documented in the release notes, which should be consulted before each Quay Enterprise upgrade.
Visit the /health/endtoend endpoint on the registry hostname and verify that the code is 200 and is_testing
is false.
If the upgraded container is healthy, repeat this process for all remaining Quay Enterprise containers.