Versionen auflisten, echtes Dateinamensschema, Editionsnamen entwirrt

Anlass war der Hinweis auf die tatsaechliche Download-URL. Am echten
Server nachgemessen:
    check-mk-raw-docker-2.3.0p9.tar.gz         -> 200 (frei)
    check-mk-enterprise-docker-2.3.0p9.tar.gz  -> 401 (geschuetzt)
    check-mk-pro-docker-2.3.0p9.tar.gz         -> 404
    check-mk-raw-2.3.0p9.docker.tar.gz         -> 404
Das bisher zuerst probierte Schema war also schlicht falsch.

Editionsnamen: checkmk.com zeigt nur noch Community/Pro/Ultimate/
Ultimate MT, Dateien und Repositories tragen bis 2.4 weiter
raw/enterprise/cloud/managed. Wer von "Pro" auf check-mk-pro-... schliesst,
bekommt 404. Die Editionsauswahl in der Oberflaeche nennt jetzt beide
Namen, die README hat eine Zuordnungstabelle, und intern werden beide
Varianten durchprobiert.

Neu: "image versions" listet verfuegbare Versionen aus bis zu drei
Quellen - Versionsarchiv von checkmk.com (oeffentlich, ohne
Zugangsdaten), Registry ueber /v2/<repo>/tags/list und das
Verzeichnis-Listing des Downloadportals. Mit --filter, --limit, --all,
--source und --bare fuer die nackte Liste zum Weiterverarbeiten. Am
Ende stehen die fertigen Kommandos zum Uebernehmen.

Das Archiv liefert ausserdem den EXAKTEN Dateinamen je Version und
Edition (data-versions im HTML). Der wird jetzt als erster Kandidat
verwendet, statt ihn zu raten - geprueft fuer raw, enterprise, cloud
und managed auf 2.3.0p9, der erste Kandidat fuer raw liefert am Server
HTTP 200.

In der Oberflaeche: neuer Punkt "Verfuegbare Versionen auflisten", und
beim Holen eines Images muss die Version nicht mehr abgetippt werden -
es erscheint eine Auswahlliste aus dem Archiv.

Gegen Docker Hub verifiziert: 2393 Tags korrekt eingelesen, Filter und
Sortierung stimmen.

Dokumentiert als Abschnitt 8.5 in beiden Sprachfassungen.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-09-20 15:54:01 +02:00
co-authored by Claude Opus 5
parent 2f00f81179
commit ed052cd62f
3 changed files with 517 additions and 31 deletions
+78 -6
View File
@@ -605,12 +605,31 @@ Docker Hub.** Im Namensraum `checkmk` auf Docker Hub gibt es ausschliesslich:
| **`enterprise` (2.0 – 2.4)** | **`registry.checkmk.com/enterprise/check-mk-enterprise`** oder Image-Tarball aus dem Kundenportal | **ja** |
| `free` (historisch, bis 2.1) | `docker.io/checkmk/check-mk-free` | nein |
Ab Checkmk 2.5 wurden die Editionen umbenannt (Raw → Community,
Enterprise → Pro, Managed → Ultimate MT); diese Images liegen wieder offen auf
Docker Hub. Wer also eine **2.5 oder neuer** einsetzt, nimmt einfach `pro`.
Ab Checkmk 2.5 wurden die Editionen umbenannt; diese Images liegen wieder offen
auf Docker Hub. Wer also eine **2.5 oder neuer** einsetzt, nimmt einfach `pro`.
Fuer **2.2/2.3/2.4-Enterprise** fuehrt nur der Weg ueber `registry.checkmk.com`
oder den Tarball.
#### Vorsicht bei den Namen
Die Umbenennung ist die zweite grosse Stolperfalle. **checkmk.com zeigt nur
noch die neuen Namen, die Dateien und Repositories tragen bis 2.4 aber die
alten.** Konkret für 2.3.0p9 – geprüft am Versionsarchiv:
| Auswahl auf checkmk.com | `--edition` hier | tatsächlicher Dateiname |
|---|---|---|
| Community | `raw` | `check-mk-raw-docker-2.3.0p9.tar.gz` |
| **Pro** | **`enterprise`** | **`check-mk-enterprise-docker-2.3.0p9.tar.gz`** |
| Ultimate | `cloud` | `check-mk-cloud-docker-2.3.0p9.tar.gz` |
| Ultimate MT | `managed` | `check-mk-managed-docker-2.3.0p9.tar.gz` |
Wer auf der Website „Pro" wählt und daraus `check-mk-pro-docker-2.3.0p9.tar.gz`
ableitet, bekommt ein **HTTP 404** – diese Datei gibt es für 2.3 nicht.
Das Skript nimmt einem das ab: es liest den echten Dateinamen aus dem
Versionsarchiv und probiert zusätzlich beide Namensvarianten durch. In der
Oberfläche steht in der Editionsauswahl jeweils beides.
> Frei herunterladbar heisst nicht lizenzfrei – der Lizenzschluessel wird
> anschliessend in Checkmk selbst hinterlegt.
@@ -753,10 +772,63 @@ In der ncurses-Oberfläche ist der Test an zwei Stellen erreichbar:
Nach dem Ändern eines Zugangsdaten-Feldes fragt das Menü ausserdem von sich
aus, ob gleich geprüft werden soll.
### 8.5 Image holen – drei Wege
### 8.5 Verfügbare Versionen auflisten
Statt Versionsnummern zu raten:
```bash
./scripts/cmk-manage.sh image versions --edition enterprise --filter 2.3.0p
```
Abgefragt werden bis zu drei Quellen:
| Quelle | `--source` | Zugangsdaten |
|---|---|---|
| Versionsarchiv von checkmk.com | `web` | **nein** |
| Registry (Docker Hub bzw. registry.checkmk.com) | `registry` | nur für Enterprise |
| Downloadportal (Verzeichnis-Listing) | `download` | ja |
Ohne `--source` werden alle drei versucht – so kommt auch ohne hinterlegte
Zugangsdaten eine brauchbare Liste zustande:
```
Versionsarchiv https://checkmk.com/download/archive
(oeffentlich, keine Zugangsdaten noetig)
2.3.0p50
2.3.0p49
2.3.0p48
...
Uebernehmen
aus der Registry : ./scripts/cmk-manage.sh image pull --edition enterprise --version <version>
als Tarball : ./scripts/cmk-manage.sh image download --edition enterprise --version <version>
nur eintragen : ./scripts/cmk-manage.sh config set CMK_VERSION <version>
```
Weitere Optionen: `--limit N` (Vorgabe 25), `--all`, `--filter TEXT` und
`--bare` für die nackte Liste ohne Rahmen – praktisch zum Weiterverarbeiten:
```bash
./scripts/cmk-manage.sh image versions --source web --filter 2.3.0p --bare | head -1
```
In der Oberfläche gibt es den Punkt **image → „Verfügbare Versionen
auflisten"**; beim Holen eines Images muss die Version ohnehin nicht mehr
abgetippt werden – dort erscheint eine Auswahlliste.
### 8.6 Image holen – drei Wege
**a) Aus einer Registry (empfohlen)**
Für die Enterprise-Edition entspricht das genau diesen beiden Schritten – das
Skript erledigt sie in einem Aufruf und trägt das Ergebnis in die `.env` ein:
```bash
podman login registry.checkmk.com # bzw. docker login
podman pull registry.checkmk.com/enterprise/check-mk-enterprise:2.3.0p9
```
```bash
# frei verfuegbar, ohne Anmeldung
sudo ./scripts/cmk-manage.sh image pull --edition raw --version 2.3.0-latest
@@ -804,7 +876,7 @@ ihn als `CMK_IMAGE` in die `.env` ein. Danach:
sudo ./scripts/cmk-manage.sh up
```
### 8.6 Nachsehen, was gilt
### 8.7 Nachsehen, was gilt
```bash
./scripts/cmk-manage.sh image status # konfiguriertes + lokale Images
@@ -1370,7 +1442,7 @@ Eine Dateiauswahl mit Verzeichnisnavigation ist eingebaut.
| `job list\|add\|set\|del\|run\|auto` | geplante Backups (eigene Zielpfade je Job) |
| `restore …` | Backup zurückspielen |
| `import …` | Migrations-Bundle einspielen |
| `image status\|list\|pull\|download\|load\|use` | Checkmk-Image beschaffen und auswaehlen |
| `image status\|list\|versions\|test\|pull\|download\|load\|use` | Checkmk-Image beschaffen und auswaehlen |
| `browser [--engine …]` | Terminal-Browser im Container – Proxy Manager lokal bedienen |
| `config list\|get\|set\|edit` | Einstellungen der `.env` anzeigen und ändern |
| `npm-port [PORT]` | Port der Proxy-Manager-Oberfläche setzen/anzeigen |