Skip to content

Commit d358f23

Browse files
committed
chore: add notes about ubi10-base images, REGISTRY variable
Signed-off-by: Oleksii Kurinnyi <[email protected]>
1 parent 4fe2b1a commit d358f23

File tree

2 files changed

+121
-51
lines changed

2 files changed

+121
-51
lines changed

CONTRIBUTING.md

Lines changed: 38 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,26 @@ Contribute to Developer Images
33

44
## Developer Base Image
55

6-
### Red Hat Universal Base Image ([UBI](https://developers.redhat.com/articles/ubi-faq#)) based image ([quay.io/devfile/base-developer-image:ubi9-latest](https://quay.io/repository/devfile/base-developer-image/))
6+
### Red Hat Universal Base Image ([UBI](https://developers.redhat.com/articles/ubi-faq#)) based images
7+
8+
Available versions:
9+
- **UBI 9**: [quay.io/devfile/base-developer-image:ubi9-latest](https://quay.io/repository/devfile/base-developer-image/)
10+
- **UBI 10**: [quay.io/devfile/base-developer-image:ubi10-latest](https://quay.io/repository/devfile/base-developer-image/)
711

812
Build with Docker buildkit:
913

14+
**UBI 9:**
1015
```bash
1116
$ cd base/ubi9
1217
$ DOCKER_BUILDKIT=1 docker image build --progress=plain -t quay.io/devfile/base-developer-image:ubi9-latest .
1318
```
1419

20+
**UBI 10:**
21+
```bash
22+
$ cd base/ubi10
23+
$ DOCKER_BUILDKIT=1 docker image build --progress=plain -t quay.io/devfile/base-developer-image:ubi10-latest .
24+
```
25+
1526
## Developer Universal Image
1627

1728
### Red Hat Universal Base Image ([UBI](https://developers.redhat.com/articles/ubi-faq#)) based image ([quay.io/devfile/universal-developer-image:ubi9-latest](https://quay.io/repository/devfile/universal-developer-image/))
@@ -25,10 +36,36 @@ $ DOCKER_BUILDKIT=1 docker image build --progress=plain -t quay.io/devfile/unive
2536

2637
To build for a specific architecture:
2738

39+
**UBI 9:**
2840
```bash
2941
# amd64
3042
$ DOCKER_BUILDKIT=1 docker image build --platform linux/amd64 --progress=plain -t quay.io/devfile/universal-developer-image:ubi9-latest .
3143

3244
# arm64
3345
$ DOCKER_BUILDKIT=1 docker image build --platform linux/arm64 --progress=plain -t quay.io/devfile/universal-developer-image:ubi9-latest .
3446
```
47+
48+
**UBI 10 Base Image:**
49+
```bash
50+
# amd64
51+
$ DOCKER_BUILDKIT=1 docker image build --platform linux/amd64 --progress=plain -t quay.io/devfile/base-developer-image:ubi10-latest .
52+
53+
# arm64
54+
$ DOCKER_BUILDKIT=1 docker image build --platform linux/arm64 --progress=plain -t quay.io/devfile/base-developer-image:ubi10-latest .
55+
```
56+
57+
## Registry Configuration
58+
59+
### Using Custom Registry
60+
61+
The build workflows support custom container registries through repository variables. This is useful for forks that want to publish to their own registry.
62+
63+
**To configure:**
64+
1. In your fork, go to **Settings****Secrets and Variables****Actions****Variables**
65+
2. Add a repository variable: `REGISTRY` = `your-registry.com/your-namespace`
66+
3. All workflows will automatically use your custom registry
67+
68+
**Example:** Setting `REGISTRY` to `ghcr.io/youruser` will publish images to:
69+
- `ghcr.io/youruser/base-developer-image:ubi9-latest`
70+
- `ghcr.io/youruser/base-developer-image:ubi10-latest`
71+
- `ghcr.io/youruser/universal-developer-image:ubi9-latest`

README.md

Lines changed: 83 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -4,69 +4,82 @@
44
# Developer Images
55

66
[![Build of UBI 9 based Developer Images](https://github.com/devfile/developer-images/actions/workflows/ubi9-build.yaml/badge.svg)](https://github.com/devfile/developer-images/actions/workflows/ubi9-build.yaml)
7+
[![Build of UBI 10 based Developer Images](https://github.com/devfile/developer-images/actions/workflows/ubi10-build.yaml/badge.svg)](https://github.com/devfile/developer-images/actions/workflows/ubi10-build.yaml)
78

89
Containers images with tools for developers 👨‍💻👩‍💻
910

1011
## Developer Base Image
1112

12-
### Red Hat Universal Base Image ([UBI](https://developers.redhat.com/articles/ubi-faq#)) based image ([quay.io/devfile/base-developer-image:ubi9-latest](https://quay.io/repository/devfile/base-developer-image))
13+
### Red Hat Universal Base Image ([UBI](https://developers.redhat.com/articles/ubi-faq#)) based images
1314

14-
Run the following command to test it with Docker:
15+
Available versions:
16+
- **UBI 9**: [quay.io/devfile/base-developer-image:ubi9-latest](https://quay.io/repository/devfile/base-developer-image)
17+
- **UBI 10**: [quay.io/devfile/base-developer-image:ubi10-latest](https://quay.io/repository/devfile/base-developer-image)
1518

19+
Run the following commands to test with Docker:
20+
21+
**UBI 9:**
1622
```bash
1723
$ docker run -ti --rm \
1824
quay.io/devfile/base-developer-image:ubi9-latest \
1925
bash
2026
```
27+
28+
**UBI 10:**
29+
```bash
30+
$ docker run -ti --rm \
31+
quay.io/devfile/base-developer-image:ubi10-latest \
32+
bash
33+
```
2134
### Included Development Tools
2235

23-
| Tool | ubi9 based image |
24-
|---------------------|-------------------------------------|
25-
| `bash` |`bash` |
26-
| `bat` |`<gh releases>` |
27-
| `buildah` |`buildah` |
28-
| `curl` |`curl` |
29-
| `ps` |`ps` |
30-
| `diff` |`diffutils` |
31-
| `emacs` |`NOT AVAILABLE (fedora only)` |
32-
| `fish` |`NOT AVAILABLE (fedora only)` |
33-
| `gh` |`<gh releases>` |
34-
| `git` |`git` |
35-
| `git-lfs` |`git-lfs` |
36-
| `ip` |`iproute` |
37-
| `jq` |`jq` |
38-
| `htop` |`NOT AVAILABLE (fedora only)` |
39-
| `kubedock` |`<gh releases>` |
40-
| `less` |`less` |
41-
| `lsof` |`lsof` |
42-
| `man` |`man` |
43-
| `nano` |`nano` |
44-
| `netcat` |`NOT AVAILABLE` |
45-
| `netstat` |`net-tools` |
46-
| `openssh-client` |`openssh-clients` |
47-
| `podman` |`podman` |
48-
| `7z` |`p7zip-plugins` |
49-
| `ripgrep` |`<gh releases>` |
50-
| `rsync` |`rsync` |
51-
| `scp` |`openssh-clients` |
52-
| `screen` |`NOT AVAILABLE` |
53-
| `sed` |`sed` |
54-
| `shasum` |`perl-Digest-SHA` |
55-
| `socat` |`socat` |
56-
| `sudo` |`sudo` |
57-
| `ss` |`NOT AVAILABLE` |
58-
| `ssl-cert` |`NOT AVAILABLE` |
59-
| `stow` |`stow` |
60-
| `tail` |`<built in>` |
61-
| `tar` |`tar` |
62-
| `time` |`time` |
63-
| `tldr` |`NOT AVAILABLE (fedora only)` |
64-
| `tmux` |`NOT AVAILABLE (fedora only)` |
65-
| `vim` |`vim` |
66-
| `wget` |`wget` |
67-
| `zip` |`zip` |
68-
| `zsh` |`NOT AVAILABLE (fedora only)` |
69-
| **TOTAL SIZE** | **903MB** (341MB compressed) |
36+
| Tool | ubi9 based image | ubi10 based image |
37+
|---------------------|-------------------------------------|-------------------------------------|
38+
| `bash` |`bash` |`bash` |
39+
| `bat` |`<gh releases>` |`<gh releases>` |
40+
| `buildah` |`buildah` |`buildah` |
41+
| `curl` |`curl` |`curl` |
42+
| `ps` |`ps` |`ps` |
43+
| `diff` |`diffutils` |`diffutils` |
44+
| `emacs` |`NOT AVAILABLE (fedora only)` |`NOT AVAILABLE (fedora only)` |
45+
| `fish` |`NOT AVAILABLE (fedora only)` |`NOT AVAILABLE (fedora only)` |
46+
| `gh` |`<gh releases>` |`<gh releases>` |
47+
| `git` |`git` |`git` |
48+
| `git-lfs` |`git-lfs` |`git-lfs` |
49+
| `ip` |`iproute` |`iproute` |
50+
| `jq` |`jq` |`jq` |
51+
| `htop` |`NOT AVAILABLE (fedora only)` |`NOT AVAILABLE (fedora only)` |
52+
| `kubedock` |`<gh releases>` |`<gh releases>` |
53+
| `less` |`less` |`less` |
54+
| `lsof` |`lsof` |`lsof` |
55+
| `man` |`man` |`man` |
56+
| `nano` |`nano` |`nano` |
57+
| `netcat` |`NOT AVAILABLE` |`NOT AVAILABLE` |
58+
| `netstat` |`net-tools` |`net-tools` |
59+
| `openssh-client` |`openssh-clients` |`openssh-clients` |
60+
| `podman` |`podman` |`podman` |
61+
| `7z` |`p7zip-plugins` |`p7zip-plugins` |
62+
| `ripgrep` |`<gh releases>` |`<gh releases>` |
63+
| `rsync` |`rsync` |`rsync` |
64+
| `scp` |`openssh-clients` |`openssh-clients` |
65+
| `screen` |`NOT AVAILABLE` |`NOT AVAILABLE` |
66+
| `sed` |`sed` |`sed` |
67+
| `shasum` |`perl-Digest-SHA` |`perl-Digest-SHA` |
68+
| `socat` |`socat` |`socat` |
69+
| `sudo` |`sudo` |`sudo` |
70+
| `ss` |`NOT AVAILABLE` |`NOT AVAILABLE` |
71+
| `ssl-cert` |`NOT AVAILABLE` |`NOT AVAILABLE` |
72+
| `stow` |`stow` |`stow` |
73+
| `tail` |`<built in>` |`<built in>` |
74+
| `tar` |`tar` |`tar` |
75+
| `time` |`time` |`time` |
76+
| `tldr` |`NOT AVAILABLE (fedora only)` |`NOT AVAILABLE (fedora only)` |
77+
| `tmux` |`NOT AVAILABLE (fedora only)` |`NOT AVAILABLE (fedora only)` |
78+
| `vim` |`vim` |`vim` |
79+
| `wget` |`wget` |`wget` |
80+
| `zip` |`zip` |`zip` |
81+
| `zsh` |`NOT AVAILABLE (fedora only)` |`NOT AVAILABLE (fedora only)` |
82+
| **TOTAL SIZE** | **903MB** (341MB compressed) | **TODO** |
7083

7184
### Extending the base image
7285
When extending the base image, `source kubedock_setup` should be called in the new image's entrypoint to set up kubedock support. This sets up a wrapper for podman to use kubedock for the following podman commands if the `KUBEDOCK_ENABLED` env variable is set to `true`:
@@ -171,10 +184,30 @@ docker run -ti --rm \
171184
#### Java
172185
JAVA_HOME_8, JAVA_HOME_11, JAVA_HOME_17, JAVA_HOME_21
173186

187+
## Configuration
188+
189+
### Registry Override
190+
191+
The workflows support using custom container registries through the `REGISTRY` environment variable. This is useful for forks that want to publish to their own registry.
192+
193+
**Default behavior:** Images are published to `quay.io/devfile`
194+
195+
**To override in a fork:**
196+
1. Go to your repository **Settings****Secrets and Variables****Actions****Variables**
197+
2. Add a repository variable: `REGISTRY` = `your-registry.com/your-namespace`
198+
3. All workflows will automatically use your custom registry
199+
200+
**Example registry formats:**
201+
- `quay.io/youruser`
202+
- `ghcr.io/youruser`
203+
- `docker.io/youruser`
204+
- `your-private-registry.com/namespace`
205+
174206
# Builds
175207

176208
This repo contains [actions](https://github.com/devfile/developer-images/actions), including:
177-
* [![release latest stable](https://github.com/devfile/developer-images/actions/workflows/ubi9-build.yaml/badge.svg)](https://github.com/devfile/developer-images/actions/workflows/ubi9-build.yaml)
209+
* [![release latest stable UBI 9](https://github.com/devfile/developer-images/actions/workflows/ubi9-build.yaml/badge.svg)](https://github.com/devfile/developer-images/actions/workflows/ubi9-build.yaml)
210+
* [![release latest stable UBI 10](https://github.com/devfile/developer-images/actions/workflows/ubi10-build.yaml/badge.svg)](https://github.com/devfile/developer-images/actions/workflows/ubi10-build.yaml)
178211

179212
Downstream builds can be found at the link below, which is _internal to Red Hat_. Stable builds can be found by replacing the 3.x with a specific version like 3.2.
180213

0 commit comments

Comments
 (0)