Let’s just jump to it:

§ I assume you have all required components: Raspberry Pi with SD card with Raspbian image on it. I used Raspbian Jessie Lite image to save some storage space. You can follow this guide on how to burn the image.

Note: default image does not have SSH server enabled. Once you finished burning the image, you have to create an empty file at the root level called ssh

Start your RPi and ssh into it using the default credentials: user -> pi, password -> raspberry.

§ Do first-time configuration of it through sudo raspi-config: changed password for pi user, set your hostname, change locale (to en_US.UTF-8 in my case), change your timezone (America/New_York for me), and expand the file system. Then reboot your RPi for settings to go in effect. Optionally, customize your welcome message in /etc/motd file: I like to use ASCII text.

§ Update your RPi using sudo apt-get update.

§ Now let’s move on to installing the Docker. You start by installing its dependencies:

sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg2 \

§ Then import Docker’s PGP key:

curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -

§ Create a repository file so you can always install the latest version of Docker:

echo "deb [arch=armhf] https://download.docker.com/linux/debian \
$(lsb_release -cs) stable" | \
sudo tee /etc/apt/sources.list.d/docker.list

§ Now, let’s install Docker itself:

sudo apt-get update && sudo apt-get install docker-ce

§ Verify that it installed correctly by running sudo docker version. You should see output similar to this:

pi@steward:~ $ sudo docker version
 Version:      17.06.0-ce
 API version:  1.30
 Go version:   go1.8.3
 Git commit:   02c1d87
 Built:        Fri Jun 23 21:24:07 2017
 OS/Arch:      linux/arm

 Version:      17.06.0-ce
 API version:  1.30 (minimum version 1.12)
 Go version:   go1.8.3
 Git commit:   02c1d87
 Built:        Fri Jun 23 21:18:32 2017
 OS/Arch:      linux/arm
 Experimental: false

§ Next you just need to use my Steward docker image (either write your own script to start a container or use my GitHub repo).

git clone https://github.com/siburny/steward-docker.git && cd steward-docker
sudo ./start.sh
Note: if you have any serial-connected devices like wireless modems or access points, and you want to access them from Steward you have change provided startup script: namely –device parameter. By default, Docker shares /dev/ttyUSB0 USB device

§ Open a browser of your choice and navigate to http://<RPi-address>:8887/.

§ If you see some widgets (at least a Clock widget), grab a beer – you are done!

Steward inside Docker container on Raspberry Pi(v2) – step by step guide

Leave a Reply

Your email address will not be published. Required fields are marked *