🐳 Docker auf einem Linux VPS installieren

Vollständige Anleitung zur Installation von Docker und Docker Compose auf Ihrem Linux VPS. Docker ermöglicht es, Anwendungen in isolierten Containern zu erstellen, bereitzustellen und auszuführen.

🐳 Docker auf einem Linux VPS installieren

Diese Anleitung erklärt, wie Sie Docker und Docker Compose auf Ihrem Linux VPS installieren. Docker ist eine Containerisierungsplattform, mit der Sie Anwendungen in isolierten Containern erstellen, bereitstellen und ausführen können, was die Bereitstellung und Verwaltung von Anwendungen erleichtert.

📋 Voraussetzungen

  • Ein Linux VPS mit Root- oder sudo-Zugriff
  • Ubuntu 20.04+ oder Debian 11+ (oder CentOS 7+/RHEL 7+)
  • Mindestens 1 GB RAM (2 GB empfohlen)
  • Eine stabile Internetverbindung

💡 Infrastruktur-Empfehlung

Docker benötigt schnelle Festplatten für die Kompilierung und intensive I/O-Operationen. Wir empfehlen unsere NVMe VPS für optimale Leistung bei der Verwendung von Docker. NVMe-Laufwerke bieten Geschwindigkeiten bis zu 10x schneller als herkömmliche SSDs, was den Build von Docker-Images und die Startzeiten von Containern erheblich beschleunigt.

⚠️ Wichtig vor der Installation

  • System überprüfen : Docker erfordert ein 64-Bit-System
  • Daten sichern : Die Installation kann einige Systemkonfigurationen ändern
  • Installationszeit : Die Installation dauert normalerweise 5 bis 10 Minuten

🔧 Installation auf Ubuntu/Debian

Schritt 1: System aktualisieren

# Paketliste aktualisieren sudo apt update # Installierte Pakete aktualisieren sudo apt upgrade -y

Schritt 2: Abhängigkeiten installieren

# Notwendige Pakete installieren sudo apt install -y \ ca-certificates \ curl \ gnupg \ lsb-release

Schritt 3: Offiziellen Docker GPG-Schlüssel hinzufügen

# Verzeichnis für Schlüssel erstellen sudo install -m 0755 -d /etc/apt/keyrings # GPG-Schlüssel herunterladen und hinzufügen curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg # Richtige Berechtigungen setzen sudo chmod a+r /etc/apt/keyrings/docker.gpg

Schritt 4: Docker-Repository konfigurieren

# Docker-Repository hinzufügen echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Schritt 5: Docker Engine installieren

# Paketliste aktualisieren sudo apt update # Docker Engine, containerd und Docker Compose installieren sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Schritt 6: Installation überprüfen

# Überprüfen, dass Docker korrekt installiert ist sudo docker --version # Überprüfen, dass Docker Compose installiert ist sudo docker compose version

🔧 Installation auf CentOS/RHEL

Schritt 1: System aktualisieren

# Pakete aktualisieren sudo yum update -y

Schritt 2: Abhängigkeiten installieren

# Notwendige Pakete installieren sudo yum install -y yum-utils

Schritt 3: Docker-Repository hinzufügen

# Docker-Repository hinzufügen sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

Schritt 4: Docker Engine installieren

# Docker Engine, containerd und Docker Compose installieren sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Schritt 5: Docker starten

# Docker-Dienst starten sudo systemctl start docker # Docker beim Booten aktivieren sudo systemctl enable docker

Schritt 6: Installation überprüfen

# Überprüfen, dass Docker korrekt installiert ist sudo docker --version # Überprüfen, dass Docker Compose installiert ist sudo docker compose version

👤 Schritt 7: Berechtigungen konfigurieren (Wichtig)

Standardmäßig erfordert Docker Root-Rechte. Um Docker ohne sudo auszuführen, fügen Sie Ihren Benutzer zur Gruppe docker hinzu:

# Benutzer zur docker-Gruppe hinzufügen sudo usermod -aG docker $USER # Änderungen anwenden (Ab-/Anmeldung erforderlich) newgrp docker

Berechtigungen überprüfen

# Docker ohne sudo testen docker run hello-world

Wenn dieser Befehl ohne Fehler funktioniert, ist Docker korrekt konfiguriert!

🧪 Schritt 8: Docker testen

Test-Container ausführen

# Hello World-Container ausführen docker run hello-world

Dieser Befehl wird:

  1. Das hello-world-Image von Docker Hub herunterladen
  2. Einen Container aus diesem Image erstellen
  3. Den Container ausführen
  4. Eine Bestätigungsmeldung anzeigen

Container überprüfen

# Laufende Container auflisten docker ps # Alle Container auflisten (einschließlich gestoppter) docker ps -a # Docker-Images auflisten docker images

🐙 Schritt 9: Docker Compose installieren (falls nicht enthalten)

Wenn Docker Compose nicht mit Docker Engine installiert wurde, installieren Sie es separat:

Auf Ubuntu/Debian

# Docker Compose herunterladen sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose # Ausführbar machen sudo chmod +x /usr/local/bin/docker-compose # Installation überprüfen docker-compose --version

Auf CentOS/RHEL

# Docker Compose herunterladen sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose # Ausführbar machen sudo chmod +x /usr/local/bin/docker-compose # Installation überprüfen docker-compose --version

📦 Wichtige Docker-Befehle

Image-Verwaltung

# Image herunterladen docker pull image-name:tag # Images auflisten docker images # Image entfernen docker rmi image-name # Ungenutzte Images bereinigen docker image prune -a

Container-Verwaltung

# Container erstellen und starten docker run image-name # Container im Hintergrund erstellen (getrennt) docker run -d image-name # Laufende Container auflisten docker ps # Container stoppen docker stop container-id # Gestoppten Container starten docker start container-id # Container neu starten docker restart container-id # Container entfernen docker rm container-id # Container-Logs anzeigen docker logs container-id # Befehl in laufendem Container ausführen docker exec -it container-id /bin/bash

Docker Compose

# In docker-compose.yml definierte Dienste starten docker compose up # Im Hintergrund starten docker compose up -d # Dienste stoppen docker compose down # Logs anzeigen docker compose logs # Images neu erstellen docker compose build

🔒 Docker absichern

Docker-Daemon konfigurieren (optional)

Erstellen oder ändern Sie /etc/docker/daemon.json:

sudo nano /etc/docker/daemon.json

Fügen Sie die folgende Konfiguration hinzu:

{ "log-driver": "json-file", "log-opts": { "max-size": "10m", "max-file": "3" } }

Docker neu starten:

sudo systemctl restart docker

Docker-Zugriff einschränken

Standardmäßig haben Benutzer in der Gruppe docker Root-äquivalente Rechte. Für mehr Sicherheit können Sie:

  1. Nur vertrauenswürdigen Benutzern Zugriff gewähren
  2. Docker rootless verwenden (erweiterte Installation)
  3. Sicherheitsrichtlinien konfigurieren über AppArmor oder SELinux

🔄 Docker aktualisieren

Auf Ubuntu/Debian

# Pakete aktualisieren sudo apt update # Docker aktualisieren sudo apt upgrade docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Auf CentOS/RHEL

# Docker aktualisieren sudo yum update docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

🗑️ Docker deinstallieren

Wenn Sie Docker deinstallieren möchten:

Auf Ubuntu/Debian

# Docker stoppen sudo systemctl stop docker # Pakete deinstallieren sudo apt purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras # Images, Container und Volumes entfernen sudo rm -rf /var/lib/docker sudo rm -rf /var/lib/containerd

Auf CentOS/RHEL

# Docker stoppen sudo systemctl stop docker # Pakete deinstallieren sudo yum remove docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras # Images, Container und Volumes entfernen sudo rm -rf /var/lib/docker sudo rm -rf /var/lib/containerd

❓ Häufige Probleme

Fehler "Cannot connect to the Docker daemon"

Lösung:

# Überprüfen, dass Docker-Dienst gestartet ist sudo systemctl status docker # Docker bei Bedarf starten sudo systemctl start docker # Überprüfen, dass Sie in der docker-Gruppe sind groups

Fehler "Permission denied"

Lösung:

# Benutzer zur docker-Gruppe hinzufügen sudo usermod -aG docker $USER # Ab- und wieder anmelden

Docker ist langsam

Mögliche Lösungen:

  • Festplattenspeicher überprüfen: df -h
  • Ungenutzte Images bereinigen: docker system prune -a
  • Verfügbares RAM überprüfen: free -h

📝 Beispiel: Einfache Anwendung bereitstellen

docker-compose.yml-Datei erstellen

# Verzeichnis für Ihr Projekt erstellen mkdir mein-projekt cd mein-projekt # docker-compose.yml-Datei erstellen nano docker-compose.yml

Beispielinhalt:

version: '3.8' services: web: image: nginx:latest ports: - "80:80" volumes: - ./html:/usr/share/nginx/html restart: unless-stopped

Anwendung starten

# Dienste starten docker compose up -d # Überprüfen, dass Container läuft docker ps

📞 Benötigen Sie Hilfe?

Wenn Sie Schwierigkeiten bei der Installation von Docker haben, wenden Sie sich bitte an den Infrawire-Support. Unser Team steht Ihnen zur Verfügung.


Hinweis : Docker ist ein leistungsstarkes Tool, das die Bereitstellung von Anwendungen erheblich vereinfacht. Nehmen Sie sich Zeit, die Grundkonzepte zu verstehen, bevor Sie Anwendungen in der Produktion bereitstellen.