(: July 28, 2019)

Red Hat Quay is an enterprise-quality container registry rebranded after the acquisition of CoreOS Quay Enterprise by Red Hat. Red Hat Quay registry is used to build and store containers, which are later deployed to the servers across your enterprise container platforms such as Kubernetes, OpenShift Container Platform e.t.c.

Features of Quay Registry

The top features of Quay include:

  • High availability design
  • Support for Geo-replication
  • Support for Docker v2, schema 2 (multiarch)
  • Best integration with Continuous integration pipelines
  • Support for a custom log rotation
  • Support for various Authentication, access methods, and storage backends
  • Automated scanning for Security vulnerabilities

This guide will discuss the steps used to setup a single instance Quay Registry. This setup is for POC purposes and is not intended for use as a production install. For Highly available Quay registry, consult official Red Hat documentation.

.td_uid_2_5d9099bc83d0c_rand.td-a-rec-img{text-align:left}.td_uid_2_5d9099bc83d0c_rand.td-a-rec-img img{margin:0 auto 0 0}

Quay Components

The three core components of Simple Quay setup are:

  • Database: Used by Red Hat Quay as its primary metadata storage (not for image storage).
  • Redis: Used as a key/value store for providing real-time events.
  • Quay (container registry): Runs the quay container as a service, consisting of several components in the pod.

Setup Hardware Minimum requirements

This setup requires a physical or virtual machine with the following minimum hardware requirements.

  • Memory: 4 GB
  • CPUs: 2
  • Disk Space: 30GB
  • At least 10GB of disk space for docker storage (to run 3 containers)
  • At least 10GB of disk space for Quay local storage (CEPH or other local storage might require more memory)

Below are the steps to follow during setup.

Step 1: Install Docker Engine

Docker is used to run Quay containers, install it on your system using our guides below.

How To Install Docker on RHEL 7 Server / Workstation

How to install Docker CE on Ubuntu / Debian / Fedora / CentOS

Step 2: Install and Deploy a Database

You can choose to run a database server in a container or on VM. For my setup, the MariaDB database is installed on the Virtual Machine that will host Quay.

--- CentOS / RHEL ---
$ sudo yum -y install mariadb-server mariadb

-- Ubuntu ----
$ sudo apt install mariadb-server

Once installed, start and enable the server to start at boot.

sudo systemctl enable --now mariadb

Secure your Database server installation.


Now create a database for Quay.

CREATE DATABASE quay_registry;
GRANT ALL ON quay_registry.* TO [email protected]'%' IDENTIFIED BY "Ain3IH0aing7";

Step 3: Install and Configure Redis

We’ll also install Redis server on the Virtual machine and not in a container.

On CentOS / RHEL

sudo rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo rpm -ivh https://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum install -y redis --enablerepo=remi

For RHEL 7, enable below repository:

sudo subscription-manager repos --enable=rhel-7-server-optional-rpms


sudo apt-get install redis-server

Start and enable redis service after installation.

sudo systemctl enable --now redis

Since everything is running in the same server, configure Redis to listen on and Server Private IP address.

sudo vim /etc/redis.conf

Set the bind address to:

bind ::1

Restart service after making the change.

sudo systemctl restart redis

Confirm that the redis service is started.

$ systemctl status redis
$ ss -tunelp | grep 6379

Step 4: Generating Red Hat Quay Configuration

Before running the Red Hat Quay service as a container, you need to use that same quay container to create the configuration file (config.yaml) needed to deploy Red Hat Quay. The UI admin password is passed as a configuration argument to the Quay container.

$ sudo docker run -p 443:8443 quay.io/redhat/quay:v3.0.3 config Heer4giivoeCoh4

Replace 3.0.3 with the latest image tag, and Heer4giivoeCoh4 with the admin password. Once the container is started, access Quay dashboard o https://<IP|Hostname>:443.

The login credentials are:

Username: quayconfig
Password: Heer4giivoeCoh4

Choose new Registry setup on the next screen.

Enter database connection settings for the schema to be created.

Create superuser account for administering Red Hat Quay.

Also provide redis connection information.

Set server hostname and whether to enable TLS/SSL.

Set Registry storage accordingly.

Validate Quay Registry settings and save.

Download configuration that will be used to bootstrap Quay registry servers.

Step 5: Deploy Red Hat Quay Registry

You have configuration file downloaded to your local machine, upload it to the server where Quay will run.

scp quay-config.tar.gz [email protected]:

You’ll use the same quay container you used to create the configuration file to deploy the Red Hat Quay service on the nodes in your cluster. Since this is a basic setup, we’re doing the setup on a single node. For high availability, you probably want three or more nodes (for example, quay01, quay02, and quay03)

Create data and configuration directories.

mkdir -p /data/quay/config
mkdir -p /data/quay/storage

Copy config file and extract it.

cp quay-config.tar.gz /data/quay/config/
cd /data/quay/config/
tar xvf quay-config.tar.gz

Finally, start the Quay container.

docker run --restart=always -p 443:8443 -p 80:8080 
  --sysctl net.core.somaxconn=4096 
  -v /data/quay/config:/conf/stack:Z 
  -v /data/quay/storage:/datastorage:Z 
  -d quay.io/redhat/quay:v3.0.3

Allow http and https ports in the firewall.

sudo firewall-cmd --permanent --zone=trusted --add-port=80/tcp
sudo firewall-cmd --permanent --zone=trusted --add-port=443/tcp
sudo firewall-cmd --reload

You can now access Red Hat Quay Registry dashboard over https protocol on a configured DNS name.

For more reading on setup and more configurations, visit Red Hat Quay documentation page.

More reading,

Install and Use Docker Registry on Fedora

How to Setup Docker Private Registry on Ubuntu

Install and Configure Docker Registry on CentOS 7

.td_uid_4_5d9099bc83f9b_rand.td-a-rec-img{text-align:left}.td_uid_4_5d9099bc83f9b_rand.td-a-rec-img img{margin:0 auto 0 0}
  • How to: Change User’s bash profile under Linux / UNIX
  • ‘Unrealistic’: BIP 91 Creator James Hilliard Has Choice Words for Segwit2x
  • Solaris add a new swap file for database
  • I Survived the Eternal Boy Playground, Will Puerto Rico?
  • Gold Dealer Sharps Pixley Begins Accepting Bitcoin
  • What Crypto Exchanges Are Saying About New York’s New Inquiry
  • Best Editor for Web Development 2017
  • Australian company announces bitcoin scholarship contest
  • Why Margin Trading Became the Scapegoat for Bitcoin’s Price Decline
  • Bitcoin Hits New 2019 High Above $8,900
  • Comcast VC Arm Embarks on ‘Aggressive’ Blockchain Investing Plan
  • Ethereum’s Byzantium Hard Fork Postponed For Further Testing
  • How to install SQLite 3.18.0 on Ubuntu 17.04, Ubuntu 16.04, Linux Mint
  • Coders Named After Harry Potter Characters Join Bitcoin’s ‘Mimblewimble’
  • Regulators: Federal Preemption of State Blockchain Laws Unlikely
  • SXI LLC Company
    SXI.IO is a global Blockchain software company, specialized in developing white label crypto exchange platforms , Wallet platforms, ICO platforms, Token Erc20 .....
    Fully Managed VPS Fully Managed VPS Fully Managed VPS

    You Might Also Enjoy NewS Post

    Best Free Web Hosting 2020

    Free Hosting 1GB $0.00 USD/mo Disk space 1GB Traffic 10GB/Month Domains 2 Plesk Cpanel Databases 10 Free 12 Month https://my.sxi.io/cart.php?a=add&pid=196

    02/05/2020 READ MORE

    Download Windows Templates for Virtualizor KVM

    Download any of client OS template to the location in Node ( /var/virtualizor/Xen or KVM according to the virtualization). http://mirror.softaculous.com/virtualizor/templates/windows-2003-x86.img.gz http://mirror.softaculous.com/virtualizor/templates/windows_2003R264.img.gz http://mirror.softaculous.com/virtualizor/templates/windows-2008r2.img.gz http://mirror.softaculous.com/virtualizor/templates/windows-2012server.img.gz http://mirror.softaculous.com/virtualizor/templates/windows-2003-x86.img.gz http://mirror.softaculous.com/virtualizor/templates/windows_2003R264.img.gz http://mirror.softaculous.com/virtualizor/templates/windows-2008r2.img.gz http://mirror.softaculous.com/virtualizor/templates/windows-2012server.img.gz http://mirror.softaculous.com/virtualizor/templates/windows-2012r2.img.gz http://mirror.softaculous.com/virtualizor/templates/windows-2016.img.gz For...

    23/04/2020 READ MORE