- TypeScript 62.1%
- HTML 31.5%
- Shell 2.9%
- Dockerfile 2.3%
- CSS 1.2%
| docker-workshop | ||
| excalidash | ||
| homeassistant | ||
| immich | ||
| satisfactory | ||
| syncthing | ||
| traefik | ||
| vaultwarden | ||
| .gitignore | ||
| deploy.sh | ||
| README.md | ||
| renovate.json | ||
Docker Workshop
In diesem Repo befinden sich Beispiel-Docker-Konfigurationen für unseren Workshop. Die vollständige und aktuelle Installationsanleitung entnehmt ihr bitte direkt den jeweiligen Projekten.
Folgende Dienste sind für den Workshop temporär auf dem Server docker-workshop.ddns.net bereitgestellt: (Stand: Mai 2026)
- Minecraft
- Satisfactory
- Homeassistant
- Nextcloud
- Syncthing
- Apache Guacamole
- Immich
- OpenWebUI
- Gitlab
- vaultwarden
- n8n
Alle Dienste mit Web-Frontend verwenden traefik als reverse proxy und damit Let's Encrypt zum Bereitstellen der HTTPS-Zertifikate.
Damit HTTPS funktioniert, muss eine Domain bereitgestellt werden. Dazu wurde bei https://noip.com ein kostenfreier Wildcard-DNS-Eintrag *.docker-workshop.ddns.net eingerichtet.
Für das lokale Deployment (z.B. hinter einem VPN) ist HTTPS, und damit traefik, nicht zwingend notwendig. Stattdessen kann einfach der unverschlüsselte HTTP-Port im Netzwerk freigegeben werden.
Docker installieren
Docker sollte wie in der offiziellen Anleitung installiert werden: https://docs.docker.com/engine/install/ Für Ubuntu sind das folgende Befehle:
# Remove old docker installations
sudo apt remove $(dpkg --get-selections docker.io docker-compose docker-compose-v2 docker-doc podman-docker containerd runc | cut -f1)
# Add Docker's official GPG key:
sudo apt update
sudo apt install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Add the repository to Apt sources:
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF
sudo apt update
# Install the latest version of docker
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
In welchem Ordner lege ich meine docker-compose.yaml Dateien ab?
Docker wird in den meisten Fällen als root auf dem Host-Server ausgeführt. Zum Starten von Containern ist es also auch üblich, das man die
Ordner unter dem root-Nutzer anlegt. Wir empfehlen einen zentralen Ort wie /srv zu wählen, wenn du planst nur Docker auf dem System zu installieren.
Eine mögliche Ordnerstruktur kann etwa so aussehen:
/srv/
├── deploy.sh
├── homeassistant
│ └── docker-compose.yml
├── syncthing
│ └── docker-compose.yml
├── traefik
│ ├── docker-compose.yml
│ └── traefik.yml
└── vaultwarden
└── docker-compose.yml
Important
Der Ordner
/srvist standardmäßig für alle Nutzer des Systems lesbar. Du kannst den Lesezugang auf den root-Benutzer einschränken, in dem du die Berechtigungen des Ordners auf den Eigentümer (root) beschränkst:sudo chmod 700 /srv