Aus diversen Gründen wollte ich mal Docker probieren. Das ganze auf einem Raspberry Pi. Die notwendigen Schritte, damit Docker und Docker Compose laufen, werden im folgenden erläutert.
Voraussetzungen (oder viel mehr „ich habe folgendes benutzt“):
- Raspberry Pi 3B+
- Image
2019-04-08-raspbian-stretch-lite.img
Da ich meist headless mit dem Pi arbeite, ist der erste Schritt das Anlegen zweier Dateien auf der boot-Partition, nachdem das Image mit Etcher auf die SD-Karte gebracht wurde:
ssh
wpa_supplicant.conf
Die ssh-Datei ist notwendig, damit der SSH-Zugang direkt freigeschaltet ist. In der anderen Datei stehen die Zugangsdaten für das WLAN.
1 2 3 4 5 6 7 8 |
country=DE ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="ssid-des-wlans" psk="key-fuer-das-wlan" } |
Wenn der Pi dann fertig ist mit booten und im WLAN ist, muss man die IP rausfinden (über den Router) und kann sich dann per SSH verbinden. Der erste Schritt ist bei mir immer die Grundkonfiguration über die Konsole (eine Übersicht der Kommandozeilenoptionen findet man hier, im letzten Beitrag):
1 2 3 4 5 6 7 |
sudo raspi-config nonint do_hostname "docker_test" sudo raspi-config nonint do_boot_behaviour B2 sudo raspi-config nonint do_boot_wait 0 sudo timedatectl set-timezone Europe/Berlin sudo raspi-config --expand-rootfs sudo reboot sudo apt-get update -y && sudo apt-get upgrade -y |
Ist das Update durchgelaufen, geht es an die eigentliche Installation:
8 9 10 11 12 13 14 |
curl -fsSL get.docker.com -o get-docker.sh && sh get-docker.sh sudo usermod -aG docker pi sudo reboot docker run hello-world sudo apt-get install -y python3-pip python3-dev sudo pip3 install docker-compose docker-compose --version |
Dabei sind gleich die jeweiligen Tests (docker run hello-world
und docker-compose --version
), um zu sehen, ob auch alles funktioniert hat.
Hi,
to install Docker-Compose it is required to install also the following dependencies. (Tested on RaspberryPi 4B)
libffi-dev libssl-dev
sudo apt-get install -y python3-pip python3-dev libffi-dev libssl-dev