Malinka to potężne urządzenie, które jest w stanie poradzić sobie nawet z uruchomieniem kontenerów dockera. Może zastanawiasz się skąd pomysł na uruchomienie kontenerów dockera na Raspberry PI? Mikrokomputery pokroju Raspberry PI stają się coraz mocniejsze, przez co można je wykorzystywać do wielu rzeczy jednocześnie.
Niejednokrotnie oprogramowanie, które tam instalujemy wymaga specjalnej konfiguracji systemu operacyjnego urządzenia. Może się zatem zdarzyć sytuacja, że wymagania oprogramowania od systemu operacyjnego zaczną być sprzeczne, przez co, mimo wolnych zasobów nie będziemy w stanie uzyskać efektu który chcemy. Z pomocą przychodzą nam kontenery, które mogą w dużym uproszczeniu zapewnić naszej aplikacji konfigurację systemu, jaka jest niezbędna, izolując jednocześnie zasoby i dane aplikacji pomiędzy sobą.
Jak zainstalować Dockera na Raspberry PI?
Instalacja jest banalnie prosta i sprowadza się do wykonania poleceń:
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker pi
Następnie należy się wylogować i ponownie zalogować, aby użytkownik „pi” otrzymał odpowiednie uprawnienia.
Teraz możemy sprawdzić czy wszystko przebiegło bez błędów. Spróbujemy uruchomić testowy kontener „hello-world”, w tym celu uruchamiamy polecenie:
docker run hello-world
Jeśli wszystko przebiegło zgodnie z planem powinniśmy zobaczyć:
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
2c7ed585684a: Pull complete
Digest: sha256:df5f5184104426b65967e016ff2ac0bfcd44ad7899ca3bbcf8e44e4461491a9e
Status: Downloaded newer image for hello-world:latest
Hello from Docker!
This message shows that your installation appears to be working correctly.
To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
(arm32v7)
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.
To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash
Share images, automate workflows, and more with a free Docker ID:
https://hub.docker.com/
For more examples and ideas, visit:
https://docs.docker.com/get-started/
Aby serwer dockera był automatycznie uruchamiany wraz ze startem naszej Malinki, warto dodać go do autostartu poleceniem:
sudo systemctl enable docker
Instalacja Docker Compose
Na koniec, warto doinstalować narzędzie Docker Compose, które pozwala na łatwe tworzenie i zarządzanie zestawami kontenerów dockera. Aby to zrobić, należy wykonać polecenia:
sudo apt-get install -y libffi-dev libssl-dev python3 python3-pip
sudo pip3 -v install docker-compose
Podsumowanie
To tyle. Od tej chwili, nasze Raspberry Pi może uruchamiać kontenery dockera.
Ważna uwaga, Raspberry PI jest urządzeniem działającym na architekturze ARM, oznacza to, że nie wszystkie gotowe kontenery dockera będą działały na tej platformie. Aby uruchomić kontener, najpierw należy upewnić się, że jest on dostępny na architekturę ARM.