Docker und Podman
Docker und Podman sind die zwei wichtigsten Container Lösungen. Docker ist aufgrund der Lizensierung etwas in die Kritik geraten - nicht zuletzt deswegen bevorzuge ich Podman. Wichtiger ist für mich aber der Daemonless und Rootless by Design Betrieb.
Als Backup für mich und für den einfacheren Einstieg habe ich die Sammlung der Compose und Konfigurationsdateien mit Anleitungen hier abgelegt: Codeberg Andreas Rehm - Docker.
Ich gehe davon aus, dass man einen Reverse-Proxy im Netzwerk reverse-proxy hat und habe daher nur die jeweils notwendigen Ports geöffnet - außer HTTP/HTTPS - das läuft über den Proxy. Dieser ist im Moment noch manuell zu konfigurieren - was bei Zoraxy aber einfach ist und ich schreibe die URLs in die jeweilige Readme.md.
flowchart LR
Internet([Client])
Internet -->|"HTTP"| P80
Internet -->|"HTTPS"| P443
Internet -->|"Admin"| P8000
subgraph Z["Zoraxy Container"]
P80["Port 80"]
P443["Port 443"]
P8000["Port 8000"]
RP["Reverse Proxy"]
Admin["Admin UI"]
P80 --> RP
P443 --> RP
P8000 --> Admin
end
subgraph N["Docker-Netzwerk reverse-proxy"]
G["Guacamole<br/>http://guacamole:8080/guacamole"]
GF["Grafana<br/>http://grafana:3000/"]
end
RP -->|"guacamole"| G
RP -->|"grafana"| GF
Um die Installation einfach zu gestalten, habe ich Installationsskripte erstellt:
# Repository clonen - nur die aktuellen Daten
git clone --depth 1 --branch main https://codeberg.org/andreas_rehm/docker.git
# In das Verzeichnis wechseln
cd docker
# ggf. später nochmal aktualisieren
# git pull --depth 1
# Deployen des Stacks mit dem Skript aus dem Repo
bash deploy-grafana-loki-alloy.sh
# Deployen von watchtower dem Skript aus dem Repo
bash deploy-watchtower.sh
# Entfernen des Stacks mit dem Skript aus dem Repo
# Achtung - das folgende Skript entfernt auch Zoraxy
# bash remove-grafana-loki-alloy.sh
# bash remove-watchtower.sh