Docker, Docker-Compose mit Portainer auf Ubuntu installieren
Docker ist unverzichtbar geworden, wenn es um Cloud-Apps geht, die reibungslos funktionieren sollen.
Eine riesige Auswahl von Docker-Container-Apps sind der größte Vorteil für diese Cloud-Lösung.
Flexibel und schnell kann ein Server installiert werden und in diesem Tutorial zeige ich dir mein typisches Basis-Setup für Docker.
Es gibt viele Wege und Möglichkeiten. Das ist nur eine Variante und ist nicht in Stein gemeißelt! 🙂
Ubuntu Server als Docker-Host installieren
Ich verwende als Docker-Host Ubuntu Server (LTS), du kannst aber auch Turnkey Linux oder Alpine Linux nehmen. Die Wahl überlasse ich dir.
Um das Server-Betriebssystem zu installieren kannst du entweder einen USB-Stick dafür verwenden, den du zuvor mit balenaEtcher bootfähig gemacht hast, oder du lädst die .iso-Datei direkt auf deinem VM-Server hoch (in meinem Fall ist es Proxmox) und installierst das OS dort.
Folge den Anweisungen für die Installation.
Sicherheitsupdates installieren
Nach dem Neustart meldest du dich mit deinen zuvor vergebenen Benutzerdaten an und bringst nun Linux auf den neuesten Stand.
Installiere die Sicherheitsupdates.
sudo apt update
sudo apt upgrade -y
Falls du als “root” angemeldet bist, brauchst du nicht “sudo” anzuwenden.
Sicherheitseinstellungen
Firewall aktivieren
Wir öffnen die Ports die von Yacht und Portainer benötigt werden, damit wir später darauf zugreifen können.
SSH wollen wir nur vom lokalen Netzwerk auf Port 22 erlauben.
sudo apt install ufw
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 8001,9000,9443/tcp
sudo ufw allow from 192.168.1.0/24 proto tcp to any port 22
sudo ufw allow from 192.168.1.0/24
sudo ufw allow http
sudo ufw allow https
sudo ufw enable
Offene Ports überprüfen.
sudo ufw status numbered
Fail2Ban installieren
Mögliche Angreifer mit Fail2Ban abwehren.
sudo apt install fail2ban
sudo fail2ban-client status
Timezone einstellen
Viele Apps funktionieren nicht richtig, wenn die Timezones nicht zusammenpassen. Daher stellen wir es gleich korrekt ein.
timedatectl status
sudo timedatectl set-timezone Europe/Vienna
Docker installieren
Essentielle Tools installieren.
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg lsb-release
Docker GPG key installieren.
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg – dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
Docker Repository hinzufügen, was spätere Docker-Updates einfacher macht.
echo \
"deb [arch=$(dpkg – print-architecture) 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
Jetzt endlich Docker installieren.
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
Docker Berechtigungen einstellen
Eine Docker-Gruppe erstellen.
sudo groupadd docker
Deinen Benutzer zur Docker-Gruppe hinzufügen.
sudo usermod -aG docker $USER
Linux neu starten und danach testen.
docker run hello-world
Docker bei Boot automatisch starten
sudo systemctl enable docker.service
sudo systemctl enable containerd.service
Docker-Compose installieren (Optional)
Falls du docker-compose nutzen willst, kannst es so installieren.
mkdir -p ~/.docker/cli-plugins/
curl -SL https://github.com/docker/compose/releases/download/v2.1.0/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose
Berechtigungen für docker-compose einstellen.
chmod +x ~/.docker/cli-plugins/docker-compose
docker-compose testen.
docker compose version
Portainer installieren
Weiter geht’s mit Portainer. Portainer Volume installieren.
docker volume create portainer_data
Portainer installieren.
docker run -d -p 8000:8000 -p 9443:9443 – name portainer – restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest
Portainer starten
Ersetze localhost mit deiner Server-IP.
https://localhost:9443
In meinem Fall öffne ich mein Portainer auf https://192.168.1.31:9443
Beim 1. öffnen des Links muss die Warnung wegen des Zertifikats akzeptiert werden.
Jetzt kannst du einen Benutzer in Portainer anlegen.
Portainer Docker-Container (Apps)

Geschafft!
Hoffentlich hat alles bei dir geklappt. Im nächsten Artikel gehe ich genauer auf Portainer ein und wir installieren Yacht.