Deutsch

Docker auf einem Linux VPS installieren

3 min
VPS/VDS-Hosting

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

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

Schritt 2: Abhängigkeiten installieren

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

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

Bash
# 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

Bash
# 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

Bash
# 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

Bash
# Ü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

Bash
# Pakete aktualisieren sudo yum update -y

Schritt 2: Abhängigkeiten installieren

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

Schritt 3: Docker-Repository hinzufügen

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

Schritt 4: Docker Engine installieren

Bash
# 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

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

Schritt 6: Installation überprüfen

Bash
# Ü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:

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

Wichtig : Nach dem Hinzufügen Ihres Benutzers zur docker-Gruppe müssen Sie sich ab- und wieder anmelden, damit die Änderungen wirksam werden.

Berechtigungen überprüfen

Bash
# 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

Bash
# 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

Bash
# 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

Bash
# 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

Bash
# 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

Bash
# 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

Bash
# 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

Bash
# 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:

Bash
sudo nano /etc/docker/daemon.json

Fügen Sie die folgende Konfiguration hinzu:

JSON
1{ 2 "log-driver": "json-file", 3 "log-opts": { 4 "max-size": "10m", 5 "max-file": "3" 6 } 7}

Docker neu starten:

Bash
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

Bash
# 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

Bash
# 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

Bash
# 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

Bash
# 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:

Bash
# Ü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:

Bash
# 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

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

Beispielinhalt:

YAML
1version: '3.8' 2 3services: 4 web: 5 image: nginx:latest 6 ports: 7 - "80:80" 8 volumes: 9 - ./html:/usr/share/nginx/html 10 restart: unless-stopped

Anwendung starten

Bash
# 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.

Bleiben Sie über die neuesten Angebote, Rabatte und Sonderaktionen informiert.

Aktionen ansehen

Wir verwenden Cookies

Wir verwenden Analyse-Cookies, um Ihre Erfahrung auf unserer Website zu verbessern. Es werden keine Daten an Dritte verkauft. Mehr erfahren Sie in unserer Datenschutzerklärung.