Chapter 6. Red Hat Quay repository overview
A repository provides a central location for storing a related set of container images that share a namespace in Quay. You can group repositories under namespaces for individual users, teams, or organizations.
For example, you might have a namespace for your personal projects, one for your company, or one for a specific team within your organization.
With a paid plan, Quay.io provides users with access controls for their repositories. Users can make a repository public, meaning that anyone can pull, or download, the images from it, or users can make it private, restricting access to authorized users or teams.
The free tier of Quay.io does not allow for private repositories. You must upgrade to a paid tier of Quay.io to create a private repository. For more information, see "Information about Quay.io pricing".
You can create a repository in Quay.io by pushing an image with the relevant podman command, or by using the Quay.io UI. You can also use the UI to delete a repository.
If you push an image through the command-line interface (CLI) without first creating a repository on the UI, the created repository is set to Private, regardless of the plan you have.
Create a repository on the Quay.io UI before you push an image. Quay.io checks the plan status and does not allow creation of a private repository if a plan is not active.
6.1. Creating a repository by using the UI Copy linkLink copied to clipboard!
To create an image repository in Quay, you can use the UI. You select a namespace and set a repository name and visibility.
Use the following procedure to create a repository using the Quay UI.
Procedure
- Click Repositories on the navigation pane.
- Click Create Repository.
Select a namespace, for example, quayadmin, and then enter a Repository name, for example,
testrepo.ImportantDo not use the following words in your repository name: *
build*trigger*tag*notificationWhen these words are used for repository names, users are unable access the repository, and are unable to permanently delete the repository. Attempting to delete these repositories returns the following error:
Failed to delete repository <repository_name>, HTTP404 - Not Found.Click Create.
Now, your example repository should populate under the Repositories page.
-
Optional. Click Settings
Repository visibility Make private to set the repository to private.
6.2. Creating a repository by using Podman Copy linkLink copied to clipboard!
To create a repository in Red Hat Quay, you can push an image with Podman. The push creates the repository if it does not already exist.
If you push an image through the command-line interface (CLI) without first creating a repository on the UI, the created repository is set to Private.
This applies regardless of the plan you have.
It is recommended that you create a repository on the Quay.io UI before pushing an image. Quay.io checks the plan status and does not allow creation of a private repository if a plan is not active.
Prerequisites
-
You have download and installed the
podmanCLI. - You have logged into your registry.
- You have pulled an image, for example, busybox.
Procedure
Pull a sample page from an example registry. For example:
$ podman pull busyboxExample output
Trying to pull docker.io/library/busybox... Getting image source signatures Copying blob 4c892f00285e done Copying config 22667f5368 done Writing manifest to image destination Storing signatures 22667f53682a2920948d19c7133ab1c9c3f745805c14125859d20cede07f11f9Tag the image on your local system with the new repository and image name. For example:
$ podman tag docker.io/library/busybox quay.io/quayadmin/busybox:testPush the image to the registry. Following this step, you can use your browser to see the tagged image in your repository.
$ podman push --tls-verify=false quay.io/quayadmin/busybox:testExample output
Getting image source signatures Copying blob 6b245f040973 done Copying config 22667f5368 done Writing manifest to image destination Storing signatures
6.3. Deleting a repository by using the UI Copy linkLink copied to clipboard!
To delete an image repository in Quay, you can use the UI. You remove the repository and its tags from the selected namespace.
Prerequisites
- You have created a repository.
Procedure
-
On the Repositories page of the v2 UI, check the box of the repository that you want to delete, for example,
quayadmin/busybox. - Click the Actions drop-down menu.
- Click Delete.
Type confirm in the box, and then click Delete.
After deletion, you are returned to the Repositories page.
6.4. User settings Copy linkLink copied to clipboard!
The Quay.io User Settings page lets you manage account preferences such as email, password, notifications, and billing. You can also adjust time machine settings or delete your account.
The User Settings page provides users a way to set their email address, password, account type, set up desktop notifications, select an avatar, delete an account, adjust the time machine setting, and view billing information.
6.4.2. Adjusting user settings Copy linkLink copied to clipboard!
To update your Quay.io account preferences, you can use the User Settings page. You can change email, password, account type, notifications, time machine, or delete the account.
Procedure
- To change your email address, select the current email address for Email Address. In the pop-up window, enter a new email address, then, click Change Email. A verification email will be sent before the change is applied.
- To change your password, click Change password. Enter the new password in both boxes, then click Change Password.
- Change the account type by clicking Individual Account, or the option next to Account Type. In some cases, you might have to leave an organization prior to changing the account type.
- Adjust your desktop notifications by clicking the option next to Desktop Notifications. Users can either enable, or disable, this feature.
You can delete an account by clicking Begin deletion. You cannot delete an account if you have an active plan, or if you are a member of an organization where you are the only administrator. You must confirm deletion by entering the namespace.
ImportantDeleting an account is not reversible and will delete all of the account’s data including repositories, created build triggers, and notifications.
- You can set the time machine feature by clicking the drop-box next to Time Machine. This feature dictates the amount of time after a tag is deleted that the tag is accessible in time machine before being garbage collected. After selecting a time, click Save Expiration Time.
6.4.3. Billing information Copy linkLink copied to clipboard!
The Billing information section on the Quay.io User Settings page shows your current plan, invoices, and receipt options. You can review plan details and manage how receipts are sent.
The following information is available:
- Current Plan. This section denotes the current plan Quay.io plan that you are signed up for. It also shows the amount of private repositories you have.
- Invoices. If you are on a paid plan, you can click View Invoices to view a list of invoices.
- Receipts. If you are on a paid plan, you can select whether to have receipts for payment emailed to you, another user, or to opt out of receipts altogether.