Schritt für Schritt Anleitung
Von der ISO bis zum ersten Container
Ubuntu Server Installation
Vorbereitung
Zuerst lädst du dir das aktuelle Ubuntu Server ISO-Image von der offiziellen Ubuntu-Webseite herunter. Wähle die LTS-Version (Long Term Support) für maximale Stabilität und fünf Jahre Updates. Mit einem Tool wie Rufus oder balenaEtcher erstellst du einen bootfähigen USB-Stick.
Installation starten
Boote deinen Server vom USB-Stick. Im BIOS oder UEFI stellst du die Boot-Reifolge entsprechend ein. Der Ubuntu-Installer startet und führt dich durch den Prozess.
Grundkonfiguration
Wähle deine bevorzugte Sprache und Tastaturlayout aus. Anschließend konfigurierst du die Netzwerkverbindung – entweder per DHCP für automatische IP-Zuweisung oder mit einer statischen IP-Adresse für Server-Umgebungen.
Festplatten-Partitionierung
Ubuntu bietet eine automatische Partitionierung an, die für die meisten Szenarien ausreicht. Fortgeschrittene Nutzer können manuelle Partitionen erstellen und dabei separate Bereiche für das System, Daten und Swap-Speicher festlegen. Für größere Setups empfiehlt sich ZFS oder LVM für flexible Storage-Verwaltung.
Benutzer anlegen
Erstelle deinen Administrator-Account mit Benutzernamen und Passwort. Dieser Account erhält automatisch sudo-Rechte für administrative Aufgaben. Wähle ein sicheres Passwort und merke dir die Zugangsdaten gut.
SSH-Server aktivieren
Aktiviere den OpenSSH-Server während der Installation. Das ermöglicht dir später die Fernverwaltung des Servers über die Kommandozeile – unverzichtbar für Headless-Betrieb ohne Monitor und Tastatur.
Installation abschließen
Der Installer kopiert nun alle Dateien, installiert das System und konfiguriert den Bootloader. Nach einem Neustart ist dein Ubuntu Server einsatzbereit.
System aktualisieren
Nach dem ersten Login aktualisierst du alle Pakete auf den neuesten Stand. Das System lädt die Paketlisten herunter und installiert verfügbare Updates für maximale Sicherheit und Stabilität.
sudo apt update
sudo apt upgrade -y
Docker Installation
Alte Versionen entfernen
Falls frühere Docker-Installationen vorhanden sind, solltest du diese zuerst vollständig entfernen, um Konflikte zu vermeiden.
sudo apt remove docker docker-engine docker.io containerd runc
Abhängigkeiten installieren
Docker benötigt einige Basispakete für HTTPS-Repositories und Zertifikatsverwaltung. Diese Pakete ermöglichen es dem System, sichere Verbindungen zu den Docker-Repositories herzustellen.
sudo apt update
sudo apt install -y ca-certificates curl gnupg lsb-release
Docker Repository hinzufügen
Füge den offiziellen GPG-Schlüssel von Docker hinzu, um die Authentizität der Pakete zu gewährleisten. Anschließend fügst du das offizielle Docker-Repository zu deinen Paketquellen hinzu. So erhältst du immer die neuesten stabilen Docker-Versionen direkt vom Hersteller.
# GPG-Schlüssel hinzufügen
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
# 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
Docker installieren
Aktualisiere die Paketliste erneut und installiere die Docker Engine zusammen mit Docker CLI und containerd. Diese Komponenten bilden das Kern-System für Container-Management.
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Docker-Dienst starten
Aktiviere den Docker-Dienst, damit er automatisch beim Systemstart geladen wird. Starte den Dienst und überprüfe seinen Status, um sicherzustellen, dass alles korrekt läuft.
sudo systemctl enable docker
sudo systemctl start docker
sudo systemctl status docker
Benutzerrechte konfigurieren
Standardmäßig benötigt Docker root-Rechte. Füge deinen Benutzer zur Docker-Gruppe hinzu, um Docker-Befehle ohne sudo ausführen zu können. Nach einem Logout und erneutem Login sind die Berechtigungen aktiv.
sudo usermod -aG docker $USER
Danach einmal abmelden und neu anmelden:
exit
Installation testen
Teste die Installation mit einem einfachen Test-Container. Docker lädt das Image herunter, startet den Container und gibt eine Bestätigungsmeldung aus. Wenn diese erscheint, ist Docker korrekt installiert und einsatzbereit.
docker run hello-world
Docker-Version überprüfen
docker --version
docker compose version
Firewall konfigurieren (Optional)
Für zusätzliche Sicherheit kannst du die UFW-Firewall aktivieren. Erlaube SSH-Verbindungen, damit du weiterhin auf deinen Server zugreifen kannst. Aktiviere die Firewall und überprüfe die Regeln.
sudo apt install -y ufw
sudo ufw allow ssh
sudo ufw allow 22/tcp
sudo ufw enable
sudo ufw status
Erste Schritte
Dein System ist jetzt bereit für Docker-Container. Du kannst mit einfachen Containern starten oder direkt Docker-Compose-Stacks für komplexere Anwendungen wie Medienserver, Heimautomatisierung oder Monitoring-Tools aufsetzen.
Beispiel: Nginx-Webserver starten
docker run -d -p 80:80 --name webserver nginx
Beispiel: Docker Compose Stack
Erstelle eine docker-compose.yml Datei:
nano docker-compose.yml
Beispiel-Inhalt:
version: '3.8'
services:
nginx:
image: nginx:latest
ports:
- "80:80"
restart: unless-stopped
Stack starten:
docker compose up -d
