Chapter 4. Creating the first user
Creating the first user establishes the initial administrative account for your Red Hat Quay registry. This step confirms that your deployment is operational and provides the credentials needed to use and manage your registry.
You can create the first user by using the Red Hat Quay UI or the API.
4.1. Creating the first user by using the UI Copy linkLink copied to clipboard!
To create the first user for your Red Hat Quay registry, you can use the UI for a visual workflow. The UI method is simpler because it does not require additional configuration in the config.yaml file.
Prerequisites
- You have deployed the Red Hat Quay registry.
Procedure
-
On the OpenShift Container Platform web console, click Operators
Installed Operators Red Hat Quay. - On the Red Hat Quay Operators page, click Quay Registry, and then the name of your registry.
- On the QuayRegistry details page, click the Registry Endpoint link, for example, example-registry-quay.username-cluster-new.gcp.quaydev.org. You are navigated to the registry’s main page.
- Click Create Account.
- Enter the details for Username, Password, Email, and then click Create Account. After creating the first user, you are automatically logged in to the Red Hat Quay registry.
4.2. Using the API to create the first user Copy linkLink copied to clipboard!
To create the first user with administrative privileges for your Red Hat Quay registry, you can use the API. This method requires configuring FEATURE_USER_INITIALIZE and SUPER_USERS in your config.yaml file before deployment.
Prerequisites
You have set
FEATURE_USER_INITIALIZE: trueand established a superuser in yourconfig.yamlfile. For example:# ... FEATURE_USER_INITIALIZE: true SUPER_USERS: - <username> # ..If you did not configure these settings upon registry creation, and need to re-configure your registry to enable these settings, see "Enabling features after deployment".
- You have not created a user by using the Red Hat Quay UI.
Procedure
On the command-line interface, generate a new user with a username, password, email, and access token by entering the following
CURLcommand:$ curl -X POST -k http:/</quay-server.example.com>/api/v1/user/initialize --header 'Content-Type: application/json' --data '{ "username": "<username>", "password":"<password>", "email": "<email>@example.com", "access_token": true}'If successful, the command returns an object with the username, email, and encrypted password. For example:
{"access_token":"123456789", "email":"quayadmin@example.com","encrypted_password":"<password>","username":"quayadmin"} # gitleaks:allowIf a user already exists in the database, an error is returned. For example:
{"message":"Cannot initialize user in a non-empty database"}If your password is not at least eight characters or contains whitespace, an error is returned. For example:
{"message":"Failed to initialize user: Invalid password, password must be at least 8 characters and contain no whitespace."}You can log in to your registry by navigating to the UI or by leveraging Podman on the CLI.
Log in to the registry by running the following
podmancommand:$ podman login -u <username> -p <password> http://<quay-server.example.com>