Docker für Windows
Docker Desktop setzt die Aktivierung der Virtualisierung im BIOS voraus.
Warum Docker unter Windows installieren? Wenn es unbedingt sein muss, dann bitte statt dem lizenzpflichtigen Docker Desktop, die kostenlose Alternative Rancher Desktop verwenden! Eine weitere Alternative ist Docker in einer WSL-Umgebung zu installieren. Aber alle 3 Möglichkeiten sollten nie produktiv verwendet werden.
Ein Linux mit Docker ist immer noch die stabilste und einfachste Lösung.
Anleitung Docker mit WSL (Windows Subsystem Linux)
WSL Installieren und Linux Distro auswählen
Bei Windows 10 muss noch der WSL 2 als Standard gesetzt werden. Bei Windows 11 nicht mehr.
WSL ist seit neuestem im Mircosoft-Store erhältlich.
Proxy in der WSL setzen, falls notwendig
export http_proxy=http://webproxy01.foo:8080
export https_proxy=http://webproxy01.foo:8080
export HTTP_PROXY=http://webproxy01.foo:8080
export HTTPS_PROXY=http://webproxy01.foo:8080
ProxyInstallationsanleitung für APT setzen (permanent)
sudo vim /etc/apt/apt.conf.d/00proxy:
Acquire::HTTP {
Proxy "http://webproxy01.foo:8080";
};
Acquire::HTTPS {
Proxy "http://webproxy01.foo:8080";
};
Docker in WSL installieren
Proxy muss gesetzt sein wenn in internen Netz!
nano docker-install.sh
#!/bin/bash
# Paketquellen aktualisieren und benötigte Pakete installieren
sudo apt update && sudo apt upgrade -y
sudo apt install -y ca-certificates curl gnupg
# Docker GPG-Schlüssel hinzufügen
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo tee /etc/apt/keyrings/docker.asc > /dev/null
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Docker-Repository hinzufügen
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# Docker installieren
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# Benutzer zur Docker-Gruppe hinzufügen (wirksam nach einem Neustart)
sudo usermod -aG docker $USER
# Automatischer Docker-Start in ~/.bashrc hinzufügen (falls noch nicht vorhanden)
if ! grep -q "dockerd" ~/.bashrc; then
echo '# Startet Docker automatisch in WSL, falls es nicht läuft' >> ~/.bashrc
echo 'if ! pgrep -x "dockerd" > /dev/null; then' >> ~/.bashrc
echo ' nohup sudo dockerd > /dev/null 2>&1 &' >> ~/.bashrc
echo ' disown' >> ~/.bashrc
echo 'fi' >> ~/.bashrc
fi
# WSL-Instanz automatisch neustarten
echo "Docker wurde erfolgreich installiert. WSL wird jetzt neu gestartet..."
wsl.exe --shutdown
echo "Starte WSL manuell neu oder öffne ein neues Terminal."
Dienst ggf. manuell starten (Init, statt systemd!)
sudo chmod a+x docker-install.sh
Remote WSL-Plugin in Visual Studio Code installieren