Docker installieren (Ubuntu/Debian)
Auf einem frischen vServer brauchst du nur wenige Befehle:
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
# einmal aus- und einloggen, damit die Gruppe greift
Prüfen mit docker --version und docker compose version (Compose ist seit Docker 20.10+ als Subcommand integriert).
Erster Container — Nginx als Beispiel
docker run -d --name nginx-test -p 80:80 nginx:alpine
Im Browser http://<deine-ip> aufrufen → „Welcome to nginx". Containers stoppen: docker stop nginx-test, löschen: docker rm nginx-test.
Docker Compose — Mehrere Services
Lege eine Datei docker-compose.yml an:
services:
web:
image: nginx:alpine
ports:
- "80:80"
volumes:
- ./html:/usr/share/nginx/html:ro
restart: unless-stopped
db:
image: postgres:16-alpine
environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
volumes:
- pgdata:/var/lib/postgresql/data
restart: unless-stopped
volumes:
pgdata:
Starten: docker compose up -d. Logs anschauen: docker compose logs -f.
Persistenz richtig handhaben
Container-Daten sind nach docker rm weg. Wichtige Daten gehören in Volumes oder Bind-Mounts:
- Bind-Mount (
./html:/usr/share/nginx/html): direkter Pfad auf dem Host. Praktisch für Configs und statische Files. - Named Volume (
pgdata:/var/lib/postgresql/data): Docker verwaltet den Pfad. Sauberer für Datenbanken und Anwendungs-State.
Vermeide es, Datenbankdaten ohne Volume zu starten — bei Restart ist alles weg.
Auto-Restart und Updates
restart: unless-stopped sorgt dafür, dass Container nach Reboot oder Crash wieder starten. Für regelmäßige Image-Updates eignet sich Watchtower oder ein simpler Cron-Job mit docker compose pull && docker compose up -d.
Sicherheit-Basics
- Niemals Container als root laufen lassen, wenn nicht nötig (
USERim Dockerfile) - Ports gezielt nur lokal binden (
127.0.0.1:5432:5432), wenn keine Außenkommunikation nötig - Secrets über
.envoder Docker Secrets, nicht ins Image kompiliert - UFW konfigurieren: Standard-Drop, gezielt Ports öffnen (80, 443, SSH)
Docker bei Nytrix-vServern
Auf KVM-Tarifen läuft Docker sofort. Bei LXC-Tarifen aktivierst du Docker im Dashboard mit einem Klick — wir setzen die nötigen Kernel-Flags automatisch.