Skip to content

Commit aeeb9a2

Browse files
authored
chore: update documentation to oci registry (#716)
* chore: update documentation to oci registry * improve command output
1 parent d5fd8fd commit aeeb9a2

10 files changed

+134
-38
lines changed

modules/ROOT/pages/getting-started.adoc

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -44,23 +44,18 @@ stackablectl release install -i commons -i secret -i listener -i zookeeper -i ka
4444
====
4545
NOTE: These examples assume Helm version 3. They will not work with Helm version 2.
4646
47-
Add the stackable-stable Helm Chart repository:
48-
49-
[source,bash]
50-
----
51-
helm repo add stackable-stable https://repo.stackable.tech/repository/helm-stable/
52-
----
47+
`helm repo` subcommands are not supported for OCI registries. The operators are installed directly, without adding the Helm Chart repository first.
5348
5449
Install the operators:
5550
5651
[source,bash]
5752
----
58-
helm install zookeeper-operator stackable-stable/zookeeper-operator --version=24.11.1
59-
helm install kafka-operator stackable-stable/kafka-operator --version=24.11.1
60-
helm install secret-operator stackable-stable/secret-operator --version=24.11.1
61-
helm install listener-operator stackable-stable/listener-operator --version=24.11.1
62-
helm install commons-operator stackable-stable/commons-operator --version=24.11.1
63-
helm install nifi-operator stackable-stable/nifi-operator --version=24.11.1
53+
helm install zookeeper-operator oci://oci.stackable.tech/sdp-charts/zookeeper-operator --version=24.11.1
54+
helm install kafka-operator oci://oci.stackable.tech/sdp-charts/kafka-operator --version=24.11.1
55+
helm install secret-operator oci://oci.stackable.tech/sdp-charts/secret-operator --version=24.11.1
56+
helm install listener-operator oci://oci.stackable.tech/sdp-charts/listener-operator --version=24.11.1
57+
helm install commons-operator oci://oci.stackable.tech/sdp-charts/commons-operator --version=24.11.1
58+
helm install nifi-operator oci://oci.stackable.tech/sdp-charts/nifi-operator --version=24.11.1
6459
----
6560
====
6661

modules/ROOT/pages/product-information.adoc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,15 +54,15 @@ Stackable components.
5454
=== Operators and products
5555

5656
All operators are supplied in container images. The products are also deployed in container images. The docker images
57-
are available for download here: https://repo.stackable.tech/#browse/browse:docker[]
57+
are available for download here: https://oci.stackable.tech/[]. Information on how to browse the images can be found xref:contributor:project-overview.adoc#docker-images[here].
5858

5959
Stackable supports installing the Operators via https://helm.sh/[Helm] or with <<stackablectl>>. Every Operator includes
6060
installation instructions in the Getting started guide.
6161

6262
==== Helm Charts
6363

64-
The Helm Charts can be found here: https://repo.stackable.tech/#browse/browse:helm-stable[] Using the Helm Charts
65-
requires Helm version 3 or above.
64+
The Helm Charts can be found here: https://oci.stackable.tech/api/v2.0/projects/sdp-charts[] Using the Helm Charts
65+
requires Helm version 3 or above. Information on how to browse the OCI repository for Helm Charts is described xref:contributor:project-overview.adoc#product-artifacts[here].
6666

6767

6868
[#stackablectl-installation]

modules/concepts/pages/container-images.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
= Container images
22
:ubi: https://catalog.redhat.com/software/base-images
3-
:stackable-image-registry: https://repo.stackable.tech/#browse/browse
3+
:stackable-image-registry: https://oci.stackable.tech/
44
:stackable-sboms: https://sboms.stackable.tech/
55
:description: Overview of Stackable’s container images, including structure, multi-platform support, and why upstream images are not used.
66

modules/concepts/pages/product-image-selection.adoc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ At the bottom of this page in the <<_common_scenarios, common scenarios>> sectio
7575

7676
== Stackable provided images
7777

78-
If your Kubernetes cluster has internet access, the easiest way is to use the publicly available images from the https://docker.stackable.tech/[Image registry hosted by Stackable] (as has been noted at the beginning of the page):
78+
If your Kubernetes cluster has internet access, the easiest way is to use the publicly available images from the https://oci.stackable.tech/[Image registry hosted by Stackable] (as has been noted at the beginning of the page):
7979

8080
[source,yaml]
8181
----
@@ -99,7 +99,7 @@ Security updates within a release line will result in patch version bumps in the
9999
If you don't specify the Stackable version, the operator will use its own version, e.g. `23.7.0`.
100100
When using a nightly operator or a `pr` version, it will use the nightly `0.0.0-dev` image.
101101

102-
All the available images (with their product and stackable version) can be found in our https://repo.stackable.tech/#browse/browse:docker:v2%2Fstackable[docker repository].
102+
All the available images (with their product and stackable version) can be found in our https://oci.stackable.tech/api/v2.0/projects/sdp[OCI registry]. Information on how to browse the registry can be found xref:contributor:project-overview.adoc#docker-images[here]).
103103

104104
== Custom docker registry
105105

@@ -117,7 +117,7 @@ spec:
117117
repo: my.corp/myteam/stackable
118118
----
119119

120-
This will change the image from the default Stackable repository `docker.stackable.tech/stackable/kafka:3.3.1-stackable23.7.0` to `my.corp/myteam/stackable/kafka:3.3.1-stackable23.7.0`.
120+
This will change the image from the default Stackable repository `oci.stackable.tech/sdp/kafka:3.3.1-stackable23.7.0` to `my.corp/myteam/stackable/kafka:3.3.1-stackable23.7.0`.
121121

122122
== [[customimages]] Custom images
123123

@@ -140,7 +140,7 @@ Only when the correct product version is given to the operator, the product will
140140
Using custom images has a few limitations that users should be aware of:
141141

142142
* The images will *have* to have the same structures that Stackable operators expect.
143-
This should usually be ensured by specifying a Stackable image in the `FROM` clause of the Dockerfile (all the available images can be found in our https://repo.stackable.tech/#browse/browse:docker:v2%2Fstackable[docker repository] - the schema is typically: `docker.stackable.tech/stackable/<product>:<product-version>-stackable<stackable-version>`).
143+
This should usually be ensured by specifying a Stackable image in the `FROM` clause of the Dockerfile (all the available images can be found in our https://oci.stackable.tech/api/v2.0/projects/sdp[OCI registry] - the schema is typically: `oci.stackable.tech/sdp/<product>:<product-version>-stackable<stackable-version>`. Information on how to browse the registry can be found xref:contributor:project-overview.adoc#docker-images[here]).
144144

145145
* Images will have to be upgraded for every new Stackable release to follow structural changes that Stackable may have made to their images.
146146
When deriving images from official Stackable images this will mean updating the version of the image in the `FROM` clause to the correct Stackable release.

modules/contributor/pages/contributing-code.adoc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,8 +79,8 @@ For `VisualStudio Code` we also recommend the following extensions:
7979
+
8080
[source,bash]
8181
----
82-
docker build --file docker/Dockerfile --tag docker.stackable.tech/stackable/<operator>:<version>-dev .
83-
kind load docker-image docker.stackable.tech/stackable/<operator>:<version>-dev --name=integration-tests
82+
docker build --file docker/Dockerfile --tag oci.stackable.tech/sdp/<operator>:<version>-dev .
83+
kind load docker-image oci.stackable.tech/sdp/<operator>:<version>-dev --name=integration-tests
8484
helm install <operator> deploy/helm/<operator>/
8585
----
8686
. Run the tests from the repository root with `./scripts/run-tests`.

modules/contributor/pages/project-overview.adoc

Lines changed: 103 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -85,10 +85,110 @@ Where are binaries, Helm Charts and Docker images stored?
8585
[[product-artifacts]]
8686
=== Product artifacts
8787

88-
A lot of artifacts are stored in the https://repo.stackable.tech/#browse/browse[Nexus repo].
89-
Under `packages` you find product binaries, the different `helm-*` stores contain the Helm Charts and Docker images are stored there too.
88+
A lot of artifacts are stored in the https://oci.stackable.tech[OCI registry]. Currently, those artifacts can be browsed by calling the API.
89+
90+
The following command lists all the different projects the artifacts are distributed across:
91+
92+
[source,console]
93+
----
94+
$ curl -X GET --header 'Accept: application/json' 'https://oci.stackable.tech/api/v2.0/projects/' | jq --raw-output '.[] | .name'
95+
library
96+
sandbox
97+
sdp
98+
sdp-charts
99+
stackable
100+
stackable-charts
101+
----
102+
103+
`sdp` contains the product and operator Docker images. The Helm Charts for the operators are found under `sdp-charts`. Some artifacts like the
104+
product binaries are stored in the https://repo.stackable.tech/#browse/browse[Nexus repo] under `packages`.
105+
106+
List the Helm Charts in `sdp-charts`:
107+
108+
[source,console]
109+
----
110+
$ curl -X GET --header 'Accept: application/json' 'https://oci.stackable.tech/api/v2.0/projects/sdp-charts/repositories?page_size=20' | jq --raw-output '.[] | .name'
111+
----
112+
113+
List all available versions of a specific Helm Chart, e.g. the zookeeper-operator:
114+
115+
[source,console]
116+
----
117+
$ curl -X GET --header 'Accept: application/json' 'https://oci.stackable.tech/api/v2.0/projects/sdp-charts/repositories/zookeeper-operator/artifacts' | jq --raw-output '.[] | .tags[].name'
118+
0.0.0-dev
119+
0.0.0-pr920
120+
0.0.0-pr919
121+
0.0.0-pr917
122+
24.11.1
123+
24.11.1-rc2
124+
24.11.1-rc1
125+
24.11.0
126+
24.7.0
127+
24.3.0
128+
----
90129

91130
[[docker-images]]
92131
=== Docker images
93132

94-
Docker images are stored in Nexus as mentioned above, but also in https://oci.stackable.tech - which is where we want to move to in the future.
133+
Docker images are stored in https://oci.stackable.tech as mentioned above. To list all the available repositories in a project, for example in
134+
the `sdp` project, run this command:
135+
136+
[source,console]
137+
----
138+
$ curl -X GET --header 'Accept: application/json' 'https://oci.stackable.tech/api/v2.0/projects/sdp/repositories?page=1' | jq --raw-output '.[] | .name'
139+
sdp/statsd_exporter
140+
sdp/stackable-cockpit
141+
sdp/product1
142+
sdp/git-sync/git-sync
143+
sdp/sig-storage/csi-provisioner
144+
sdp/sig-storage/csi-node-driver-registrar
145+
sdp/kcat
146+
sdp/java-devel
147+
sdp/vector
148+
sdp/hello-world
149+
----
150+
151+
Since the API is using pagination it might be necessary to increment the `page` in the command to see additional results.
152+
153+
It is also possible to list all the available image tags for a repository of choice. The following command shows the tags of the `trino` repository:
154+
155+
[source,console]
156+
----
157+
$ curl -X GET --header 'Accept: application/json' 'https://oci.stackable.tech/api/v2.0/projects/sdp/repositories/trino/artifacts?page=1&page_size=25' | jq --raw-output '.[] | select(.extra_attrs.config != {}) | .tags[]?.name'
158+
455-stackable0.0.0-dev
159+
451-stackable0.0.0-dev
160+
470-stackable0.0.0-dev
161+
470-stackable0.0.0-dev-arm64
162+
455-stackable0.0.0-dev-arm64
163+
451-stackable0.0.0-dev-arm64
164+
470-stackable0.0.0-dev-amd64
165+
455-stackable0.0.0-dev-amd64
166+
451-stackable0.0.0-dev-amd64
167+
469-stackable0.0.0-dev
168+
469-stackable0.0.0-dev-arm64
169+
469-stackable0.0.0-dev-amd64
170+
451-stackable24.11.1
171+
455-stackable24.11.1
172+
----
173+
174+
Similar to the previous command, the API call uses pagination again. So the `page` value in the command can be incremented to see more results. Here the `page_size`
175+
parameter was also used to increase the results per page.
176+
177+
Another possibility, instead of using `curl`, would be the https://github.com/google/go-containerregistry/blob/main/cmd/crane/README.md[crane tool], which can also be used
178+
to browse the tags when given the path to a repository.
179+
180+
[source,console]
181+
----
182+
$ crane ls -O oci.stackable.tech/sdp/trino
183+
414-stackable0.0.0-dev
184+
414-stackable0.0.0-dev-amd64
185+
414-stackable0.0.0-dev-arm64
186+
414-stackable24.3.0
187+
414-stackable24.7.0
188+
414-stackable24.7.0-amd64
189+
414-stackable24.7.0-arm64
190+
428-stackable0.0.0-dev
191+
428-stackable0.0.0-dev-amd64
192+
428-stackable0.0.0-dev-arm64
193+
...
194+
----

modules/contributor/pages/testing-on-kubernetes.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ The easiest way that we found to do this is by using https://github.com/tilt-dev
8787
Tilt should then automatically discover this registry from the cluster config and push images there.
8888

8989
If you are using a remote cluster, Tilt will push the generated container images to a remote registry, in order for your Kubernetes to be able to access them.
90-
We have configured `docker.stackable.tech/sandbox` as the default registry, as this is what all our developers use.
90+
We have configured `oci.stackable.tech/sandbox` as the default registry, as this is what all our developers use.
9191
External contributors will not have access to this registry and need to override this to a registry of their choice.
9292

9393
Overriding the default registry can be done by providing a file called `tilt_options.json` in the same directory as the Tiltfile.

modules/guides/pages/custom-images.adoc

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
= Using customized product images
2-
:stackable-docker-registry: https://repo.stackable.tech/#browse/browse:docker:v2%2Fstackable
2+
:stackable-oci-registry: https://oci.stackable.tech/api/v2.0/projects/sdp
33
:kind: https://kind.sigs.k8s.io/
44
:kind-load-image: https://kind.sigs.k8s.io/docs/user/quick-start/#loading-an-image-into-your-cluster
55
:description: Customize Stackable product images by modifying base images, deploying to a registry or Kubernetes cluster, and configuring your Stacklet to use them.
@@ -21,12 +21,12 @@ To use a customized image you have to:
2121

2222
The Stackable operators rely on the structure and contents of the product images, so any modifications need to be done using the Stackable images as base images.
2323

24-
You can find the Stackable Docker images in the {stackable-docker-registry}[Stackable Docker registry].
25-
Images follow a naming schema: `docker.stackable.tech/stackable/<product>:<product-version>-stackable<stackable-version>` where `<product>` are the products like `druid`, `trino` and `opa`, `<product-version>` are product versions like `28.0.1`, `414` or `0.61.0` and `<stackable-version>` is a Stackable platform version like `23.7` or `24.3.0`.
24+
You can find the Stackable Docker images in the {stackable-oci-registry}[Stackable OCI registry].
25+
Images follow a naming schema: `oci.stackable.tech/sdp/<product>:<product-version>-stackable<stackable-version>` where `<product>` are the products like `druid`, `trino` and `opa`, `<product-version>` are product versions like `28.0.1`, `414` or `0.61.0` and `<stackable-version>` is a Stackable platform version like `23.7` or `24.3.0`.
2626
The Stackable version can also be `0.0.0-dev` for nightly images.
2727
You can use this naming schema together with the xref:operators:supported_versions.adoc[] list to quickly find the base image you need.
2828

29-
For example, you might use the `docker.stackable.tech/stackable/hive:3.1.3-stackable24.3.0` image as a base for a modified Apache Hive image where you add a custom database driver.
29+
For example, you might use the `oci.stackable.tech/sdp/hive:3.1.3-stackable24.3.0` image as a base for a modified Apache Hive image where you add a custom database driver.
3030
Use the `FROM` clause in your Dockerfile to reference the base image.
3131

3232
When tagging the image, there are no requirements by the operator, any registry and tag is possible.
@@ -60,4 +60,5 @@ With this configuration the operator deploys your Stacklet using your custom ima
6060
== Further reading and useful links
6161

6262
* Read about xref:concepts:product-image-selection.adoc[] to learn about other ways of specifying a product version or images, for example how to use a custom registry when mirroring Stackable images.
63-
* Have a look at the {stackable-docker-registry}[Stackable Docker registry] to find out which images are available to use as a base.
63+
* Have a look at the {stackable-oci-registry}[Stackable OCI registry] to find out which images are available to use as a base. Information on how to browse the registry
64+
can be found xref:contributor:project-overview.adoc#docker-images[here].

0 commit comments

Comments
 (0)