Skip to content

Commit 2a7609f

Browse files
committed
optional tools and quay account
1 parent 7c11a57 commit 2a7609f

2 files changed

Lines changed: 79 additions & 13 deletions

File tree

documentation/modules/ROOT/pages/pushing.adoc

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,29 +2,34 @@
22

33
So far you've been working with your container image locally. Now let's take it to a remote registry.
44

5-
== Tagging an image
5+
[IMPORTANT]
6+
====
7+
Before continuing you will need to have/create a container registry account. You can sign up for a free one at https://quay.io[Quay.io] or the https://hub.docker.com/[Docker Hub].
68
7-
IMPORTANT: Before continuing you will need to have/create a container registry account. You can sign up for a free one at https://quay.io[Quay.io] or the https://hub.docker.com/[Docker Hub].
9+
Instructions on how to create your Quay.io account are available in the xref:setup.adoc[Setup] section.
10+
====
11+
12+
== Tagging an image
813

9-
First you'll need to tag your image accordingly to the registry and name you gave to your repository. Say for example we create a repository `myrepository`.
14+
First you'll need to tag your image accordingly to the registry and name you gave to your repository. Say for example we create a repository `my-image` in the organization id `your-user`.
1015

1116
If you have a Docker Hub account:
1217

1318
[.console-input]
1419
[source,bash,subs="+macros,+attributes"]
1520
----
16-
podman tag my-image docker.io/myrepository/my-image
21+
podman tag my-image docker.io/your-user/my-image
1722
----
1823

1924
If using Quay.io:
2025

2126
[.console-input]
2227
[source,bash,subs="+macros,+attributes"]
2328
----
24-
podman tag my-image quay.io/myrepository/my-image
29+
podman tag my-image quay.io/your-user/my-image
2530
----
2631

27-
IMPORTANT: Make sure to replace `myrepository` with the name of your own repository.
32+
IMPORTANT: Make sure to replace `your-user` with the name of your own user id or organization id.
2833

2934
[TIP]
3035
====
@@ -33,7 +38,7 @@ If you build your image already using the tag, you won't need to do this step be
3338
[.console-input]
3439
[source,bash,subs="+macros,+attributes"]
3540
----
36-
podman build -t quay.io/myrepository/my-image .
41+
podman build -t quay.io/your-user/my-image .
3742
----
3843
3944
====
@@ -45,7 +50,7 @@ If you now run `podman images` you'll see something like this:
4550
----
4651
REPOSITORY TAG IMAGE ID CREATED SIZE
4752
my-image latest a63dec174904 55 minutes ago 516MB
48-
quay.io/myrepository/my-image latest a63dec174904 55 minutes ago 516MB
53+
quay.io/your-user/my-image latest a63dec174904 55 minutes ago 516MB
4954
----
5055

5156
== Pushing an image
@@ -79,15 +84,15 @@ And finally you can push it, eg.:
7984
[.console-input]
8085
[source,bash,subs="+macros,+attributes"]
8186
----
82-
podman push quay.io/myrepository/my-image
87+
podman push quay.io/your-user/my-image
8388
----
8489

8590
You should have an output like this:
8691

8792
[.console-output]
8893
[source,text]
8994
----
90-
The push refers to repository [quay.io/myrepository/my-image]
95+
The push refers to repository [quay.io/your-user/my-image]
9196
abea900bc08c: Pushed
9297
99d5cac89a03: Pushed
9398
7b08010864ba: Pushed

documentation/modules/ROOT/pages/setup.adoc

Lines changed: 64 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,7 @@ TIP: By default, the commands in this tutorial are using podman, but you can use
1010

1111
[options="header"]
1212
|===
13-
|**Tool**|**macOS**|**Fedora**|**Windows**
14-
13+
| **Tool** | **macOS** | **Fedora** |**Windows**
1514

1615
| **Podman Desktop**
1716
| https://podman-desktop.io/downloads[Podman Desktop for Mac, window="_blank"]
@@ -30,7 +29,69 @@ TIP: By default, the commands in this tutorial are using podman, but you can use
3029
| `dnf install maven`
3130
| https://maven.apache.org/download.cgi[Windows] (Make sure you set the `MAVEN_HOME` environment variable and add `%MAVEN_HOME%\bin` to your `PATH`)
3231

32+
|===
33+
34+
== Optional Tools
35+
36+
The following tools are optional, feel free to replace with your own preferred ones.
37+
38+
39+
[options="header"]
40+
|===
41+
|**Tool**|**macOS**|**Fedora**|**Windows**
42+
43+
| **Visual Studio Code**
44+
3+| Open https://code.visualstudio.com/download[Visual Studio Code download page, window="_blank"] and follow the installation instructions related to your operating system
45+
46+
| **curl**
47+
| `brew install curl`
48+
| `dnf install curl`
49+
| https://curl.se/windows/[Windows]
3350

3451
|===
3552

36-
--
53+
== Quay.io Account
54+
55+
**Quay.io** is a **container image registry** service, similar to _Docker Hub_, which is fully managed by Red Hat. It provides a centralized, secure place for users and organizations to store, build, and distribute their OCI (Open Container Initiative) container images.
56+
57+
NOTE: If you already have a _Quay.io_ account or a _Docker Hub_ account, you can skip this section.
58+
59+
=== Creating a Quay.io Account
60+
61+
A Quay.io account is typically linked to a **Red Hat account**.
62+
63+
. *Navigate to Quay.io*: Go to the Quay.io website.
64+
. *Sign In/Register*: Look for a *Sign In* or *Register* option. Since Quay.io is part of Red Hat's ecosystem, you'll be directed to use your Red Hat credentials.
65+
* If you *already have a Red Hat account*, sign in with those credentials.
66+
* If you *do not have a Red Hat account*, you'll be prompted to create one first. Follow the prompts to register for a new Red Hat account.
67+
. *Confirm Username*: Upon your first login to Quay.io using your Red Hat credentials, you may be redirected to a page to *confirm your username*. This username will serve as your *namespace* (e.g., `quay.io/<your-username>/<repo-name>`) in the container registry.
68+
69+
=== Creating a Repository
70+
71+
A repository is a storage location for your container images and related artifacts: think of it as a folder or directory for a specific containerized application or component.
72+
73+
. *Log In*: Sign in to your Quay.io account.
74+
. *Navigate to Repositories*: On your main page, or in the navigation menu, look for a *Repositories* section or a *+* icon (or a *Create Repository* button).
75+
. *Select Repository Type*: Choose *Container Image Repository* (or similar option, if prompted).
76+
. *Enter Details*:
77+
* *Namespace*: Select your username (or an Organization you belong to).
78+
* *Repository Name*: Enter a name for your repository (e.g., `my-first-app`). *Avoid* using names like `build`, `trigger`, `tag`, or `notification` as they can cause access and deletion issues.
79+
. *Visibility*: Choose the *Repository Visibility*:
80+
* *Public*: Anyone can pull this image (free tier typically allows unlimited public repositories).
81+
* *Private*: Only you and users/teams you explicitly grant access to can pull this image (usually limited/paid in the free tier).
82+
. *Create*: Click the *Create Repository* button. The repository will now appear in your list, ready to receive images.
83+
84+
=== Creating a robot account
85+
86+
A good practice is to create a robot account to be used for automation purposes and to avoid accidental leaks of credentials.
87+
88+
. Once you have logged in, in the top right corner click on your username and *navigate* to the _Account Settings_ page.
89+
. In the left vertical menu select the *Robot Accounts* icon to open the releated tab.
90+
. Click on the *Create Robot Account* button.
91+
. Enter a name for the robot account and click on the *Create* button.
92+
. The next screen will propose you to *add permissions* to the robot account. You can choose to add permissions to a specific repository or to all repositories.
93+
.. Make sure to select the *Write* permission to use it for pushing images to the repository.
94+
.. Click on the *Add permissions* button.
95+
. The robot account will now appear in your list, ready to be used.
96+
97+
NOTE: The robot account takes the following format: `<username>+<robot-account-name>`.

0 commit comments

Comments
 (0)