Chapter 2. Architecture

Quay is made up of three core components for a basic setup. In highly available setups, an additional object storage component is needed. The three core components are:

  • Database (MySQL or PostgreSQL): Used by Quay as its primary metadata storage (not for image storage).
  • Redis (key, value store): Used for providing real time events and during Quay setup and installation.
  • Quay (container registry): Runs Quay as a service, consisting of several components in the pod.

For the high availability installation, you need to use one of the following types of storage:

  • Public cloud storage: In public cloud environments, you should use the cloud provider’s object storage, such as Amazon S3 (for AWS) or Google Cloud Storage (for Google Cloud).
  • Private cloud storage: In private clouds, an S3 or Swift compliant Object Store is needed, such as Ceph RADOS, or OpenStack Swift.

Local storage is supported for the Red Hat Quay test-only installation, but not for high-availability.