Docker Installation

Docker ist erforderlich, damit Wings Spielserver in isolierten Containern ausführen kann. Diese Anleitung behandelt die Installation von Docker CE auf unterstützten Betriebssystemen.

Systemanforderungen

Bevor Sie Docker installieren, stellen Sie sicher, dass Ihr System die folgenden Anforderungen erfüllt:

  • 64-Bit-Betriebssystem
  • Linux-Kernel-Version 3.10 oder höher
  • Root- oder sudo-Zugriff

Schnellinstallation

Für die meisten Systeme können Sie das offizielle Docker-Installationsskript verwenden:

curl -sSL https://get.docker.com/ | CHANNEL=stable sudo sh

Dieses Skript erkennt automatisch Ihr Betriebssystem und installiert die entsprechende Docker CE-Version.

Manuelle Installation

Ubuntu Installation

# Paketindex aktualisieren
sudo apt-get update

# Erforderliche Pakete installieren
sudo apt-get install -y apt-transport-https ca-certificates curl gnupg lsb-release

# Docker's offiziellen GPG-Schlüssel hinzufügen
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

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

# Docker CE installieren
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io

Debian Installation

# Paketindex aktualisieren
sudo apt-get update

# Erforderliche Pakete installieren
sudo apt-get install -y apt-transport-https ca-certificates curl gnupg lsb-release

# Docker's offiziellen GPG-Schlüssel hinzufügen
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

# Repository hinzufügen
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# Docker CE installieren
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io

CentOS/RHEL Installation

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

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

# Docker CE installieren
sudo yum install -y docker-ce docker-ce-cli containerd.io

Nach der Installation

Docker starten und aktivieren

Nach der Installation starten und aktivieren Sie den Docker-Service:

# Docker-Service starten
sudo systemctl start docker

# Docker beim Systemstart aktivieren
sudo systemctl enable docker

# Installation überprüfen
sudo docker run hello-world

Optional: Benutzer zur Docker-Gruppe hinzufügen

Um Docker-Befehle ohne sudo auszuführen, fügen Sie Ihren Benutzer zur Docker-Gruppe hinzu:

# Aktuellen Benutzer zur Docker-Gruppe hinzufügen
sudo usermod -aG docker $USER

# Abmelden und wieder anmelden, damit die Änderungen wirksam werden
# Oder führe diesen Befehl aus:
newgrp docker
Warnung: Das Hinzufügen eines Benutzers zur Docker-Gruppe gewährt root-äquivalente Berechtigungen. Fügen Sie nur vertrauenswürdige Benutzer zu dieser Gruppe hinzu.

Überprüfung

Überprüfen Sie, dass Docker korrekt funktioniert:

# Docker-Version prüfen
docker --version

# Docker-Service-Status prüfen
sudo systemctl status docker

# Test-Container ausführen
docker run hello-world

Fehlerbehebung

Häufige Probleme

  • Berechtigung verweigert: Stellen Sie sicher, dass Sie Befehle mit sudo ausführen oder Ihren Benutzer zur Docker-Gruppe hinzugefügt haben
  • Service startet nicht: Überprüfen Sie die Logs mit sudo journalctl -u docker.service
  • Netzwerkprobleme: Stellen Sie sicher, dass Ihre Firewall Docker's Standard-Bridge-Netzwerk zulässt

Docker Daemon Konfiguration

Wenn Sie Docker Daemon-Einstellungen anpassen müssen, bearbeiten Sie /etc/docker/daemon.json:

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

Nach der Bearbeitung starten Sie Docker neu:

sudo systemctl restart docker