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]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
[/note]
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:
```bash
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg2 \
software-properties-common
```
**§** Then import Docker's PGP key:
```bash
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:
```bash
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:
```bash
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:
```bash
pi@steward:~ $ sudo docker version
Client:
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
Server:
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).
```bash
git clone https://github.com/siburny/steward-docker.git && cd steward-docker
sudo ./start.sh
```
[note]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[/note]
**§** 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!