Beide Hinweise standen bisher nur in Abschnitt 5.1. Wer Kapitel 5 von
oben nach unten abarbeitet, lief aber vorher schon in den dnf-Fehler.
Deshalb jetzt im Hauptablauf selbst:
- Ein hervorgehobener "Schritt 0" gleich zu Beginn des Kapitels mit
den Pruefbefehlen (subscription-manager status, dnf repolist) und
der Registrierung ueber die kostenlose Developer-Subskription.
Dazu der Hinweis, dass RHEL 9 Simple Content Access nutzt und
"subscription-manager attach" entfaellt, sowie die Feststellung,
dass Rocky/Alma/CentOS Stream/Fedora nichts davon brauchen.
- Direkt beim epel-release-Befehl der Vorbehalt, dass EPEL eine
funktionierende Subskription voraussetzt: das Paket konfiguriert
nur die Quelle, Abhaengigkeiten kommen weiter aus BaseOS/AppStream.
EPEL ist damit kein Ersatz fuer die Registrierung. Bleibt
podman-compose deswegen unerreichbar, fuehrt der Quadlet-Weg aus
Kapitel 6 ohne Compose zum Ziel.
Die Aufzaehlung dessen, was install.sh tut, entspricht jetzt dem
tatsaechlichen Ablauf: Repository-Pruefung zuerst, dialog mit Rueckfall
auf newt.
Beide Sprachfassungen gepflegt.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Auf einem frisch installierten RHEL liefert dnf ohne Registrierung gar
keine Pakete - weder podman noch git oder dialog. Das ist jetzt in
beiden READMEs als Kapitel 5.1 beschrieben, mit drei Wegen:
1) kostenlose Developer Subscription for Individuals (bis 16 Systeme,
kleine Produktivnutzung eingeschlossen). RHEL 9 nutzt Simple
Content Access, ein "subscription-manager attach" entfaellt.
2) Installations-DVD als lokales Repository - ohne Konto und offline,
aber ohne Sicherheitsupdates, daher nur als Ueberbrueckung.
3) Wechsel auf Rocky Linux oder AlmaLinux.
Dazu eine Tabelle, welche Pakete das Projekt wirklich braucht und aus
welchem Repository sie kommen, sowie der Hinweis, dass EPEL hier nicht
weiterhilft (es setzt die Basis-Repositories voraus) - in dem Fall ist
der Quadlet-Weg ohne podman-compose die Loesung.
install.sh:
- rhel_repo_check prueft vor der Installation, ob ueberhaupt ein
nutzbares Repository vorhanden ist, und nennt sonst die drei Wege,
statt den nackten dnf-Fehler stehen zu lassen.
- "dialog" ist nicht mehr zwingend: es liegt in AppStream, bei
Fehlschlag wird "newt" (whiptail, BaseOS) versucht. Vorher brach die
Installation ab, wenn dialog fehlte - obwohl die Skripte whiptail
ohnehin unterstuetzen.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
README_en.md als vollstaendige englische Fassung der Dokumentation, in
beiden Dateien oben aufeinander verlinkt. Die Skripte selbst bleiben
deutsch; woertliche Programmausgaben und Menue-Abbildungen stehen
deshalb auch im englischen Text unveraendert, mit kurzer Erlaeuterung.
Beim Uebersetzen aufgefallen und in README.md behoben:
- Unterkapitel trugen nach dem Einfuegen neuer Kapitel noch die alten
Nummern: 9.1-9.4 in Kapitel 10, 11.1/11.2 in Kapitel 14 und
14.1-14.7 in Kapitel 17.
- Leerer Codeblock in Kapitel 9 (Rest einer frueheren Einfuegung).
- Verrutschte Zeile im Menue-Kasten des Hauptmenues.
Beide Dateien haben denselben Aufbau: 22 Kapitel, 27 Unterkapitel,
136 Codebloecke, 117 Tabellenzeilen; alle internen Verweise aufgeloest.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Der NGINX Proxy Manager laesst sich jetzt auch dann einrichten, wenn
seine Oberflaeche auf Port 81 aus dem Netz nicht erreichbar ist.
browser
Terminal-Browser in einem eigenen Container, gestartet mit
"run --rm -it --network host" - damit erreicht er 127.0.0.1 genau wie
der Proxy Manager selbst. Engines: browsh und carbonyl (rendern einen
echten Browser und koennen JavaScript, das die Adminoberflaeche
benoetigt) sowie links2/w3m/lynx und eine Shell mit curl/jq/openssl
fuer Diagnose. Werkzeug-Image unter containers/browser/.
Bewusst kein Compose-Dienst: ein Browser ist interaktiv, und
podman-compose behandelt Profile unzuverlaessig.
npm-port
Port der Adminoberflaeche frei waehlbar. Das Image bindet fest auf 81
("listen 81 default;"), eine Umgebungsvariable dafuer gibt es in 2.15.1
noch nicht. Ein abweichender Port wird deshalb ueber den nginx-
Erweiterungspunkt /data/nginx/custom/http.conf bereitgestellt. Nur der
markierte Block wird verwaltet, eigene Eintraege bleiben erhalten.
Port 81 lauscht weiterhin lokal und ist per Firewall zu sperren.
config
Alle Werte der .env sind menuegefuehrt bzw. ueber config get/set
aenderbar - der Editor bleibt als Menuepunkt erhalten. Geprueft wird
beim Setzen: Portbereich und Kollisionen, Site-Namen, vollqualifizierte
Image-Namen, installierte Runtime, Zahlen- und URL-Felder.
Fehlerbehebungen
- ui_*-Funktionen initialisieren sich selbst; eine von aussen gesetzte
UI_BIN fuehrte unter "set -u" zum Abbruch.
- Eine nicht installierte CMK_RUNTIME machte das gesamte Werkzeug
unbenutzbar, auch den Aufruf zum Korrigieren. Jetzt wird gewarnt und
selbst gesucht.
- env_set setzt Werte mit Leerzeichen in Anfuehrungszeichen und laesst
optional leere Werte zu.
README auf 22 Kapitel erweitert: Kapitel 11 (Terminal-Browser inkl.
NPM-API als Fallback fuer den Zertifikats-Upload), Kapitel 12 (Admin-Port)
und Abschnitt 14.3 (Einstellungsmenue).
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>