OffshoreVps
Anleitungen12 Okt. 20267 Min. LesezeitVon dem OffshoreVps-Team

So installieren Sie Docker und Docker Compose auf einem Ubuntu-VPS

Docker Engine aus dem offiziellen Repository installieren, ohne sudo ausführen, einen ersten Compose-Dienst starten und die Firewall-Falle vermeiden, die Ports offenlegt.

Mit Docker betreiben Sie Datenbanken, Web-Apps und Tools in isolierten Containern, sodass die Installation von etwas Neuem nie den Rest Ihres Servers durcheinanderbringt. Diese Anleitung installiert Docker Engine und Docker Compose unter Ubuntu und startet einen ersten echten Dienst.

Terminalfenster auf einem VPS mit den Befehlen zur Installation von Docker auf einem Ubuntu-VPS, beginnend mit „sudo apt update“
Die Art von Befehlen, die Sie in dieser Anleitung auf Ihrem Server ausführen.

1. Aus dem Docker-Repository installieren

sudo apt update
sudo apt install -y 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

echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo $VERSION_CODENAME) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Prüfen Sie die Installation mit sudo docker run hello-world.

2. Docker ohne sudo ausführen

sudo usermod -aG docker $USER
newgrp docker

Mitglieder der Gruppe docker haben auf dem Rechner faktisch Root-Rechte, fügen Sie deshalb nur Benutzer hinzu, denen Sie vertrauen.

3. Ihre erste Compose-Datei

Legen Sie einen Ordner und eine compose.yaml an, die das Monitoring-Tool Uptime Kuma ausführt:

mkdir -p ~/kuma && cd ~/kuma
cat > compose.yaml <<'EOF'
services:
  kuma:
    image: louislam/uptime-kuma:1
    restart: unless-stopped
    ports:
      - "127.0.0.1:3001:3001"
    volumes:
      - ./data:/app/data
EOF
docker compose up -d

Die Bindung an 127.0.0.1 hält den Port aus dem öffentlichen Internet heraus. Schalten Sie einen Reverse-Proxy wie Nginx oder Caddy davor, wenn Sie von außen darauf zugreifen möchten.

Die Schritte dieser Anleitung in der Reihenfolge: 1. 1. Aus dem Docker-Repository installieren; 2. 2. Docker ohne sudo ausführen; 3. 3. Ihre erste Compose-Datei; 4. Alltägliche Befehle; 5. Eine Sicherheitswarnung zu Firewalls; 6. Was Sie als Nächstes betreiben können
Die Schritte dieser Anleitung in der Reihenfolge.

Alltägliche Befehle

  • docker ps listet laufende Container auf.
  • docker compose logs -f verfolgt die Logs.
  • docker compose pull && docker compose up -d aktualisiert auf neuere Images.
  • docker system prune entfernt ungenutzte Images und gestoppte Container.

Ein Sicherheitshinweis zu Firewalls

Docker schreibt eigene iptables-Regeln. Ein als "8080:80" veröffentlichter Port kann aus dem Internet erreichbar sein, selbst wenn UFW ihn als blockiert anzeigt. Veröffentlichen Sie nur, was öffentlich sein muss, binden Sie private Dienste an 127.0.0.1 und testen Sie von außen mit einem Portscanner.

Was als Nächstes laufen kann

Beliebte selbst gehostete Apps sind Nextcloud, Vaultwarden, Gitea, Plausible, n8n und Jellyfin. Ein vollständiges Beispiel finden Sie in unserer Anleitung zum Selbsthosten von Nextcloud.