RaspbianがインストールされたRaspberry Pi 3 Model BにDockerをインストールした際のメモです。
特にハマる事も無く、公式ドキュメント『Get Docker for Debian | Docker Documentation』に従ってインストールするだけで、問題無く動作しました。

インストールからバージョン確認まで

# Raspberry Piに接続する。mDNS名称を使う。
macOS$ ssh pi@raspberrypi.local

# OSのバージョンを確認する。
pi@raspberrypi$ cat /etc/os-release
PRETTY_NAME="Raspbian GNU/Linux 8 (jessie)"
NAME="Raspbian GNU/Linux"
VERSION_ID="8"
VERSION="8 (jessie)"
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"

# 公式ドキュメントに従ってインストールする。「arch=armhf」を指定すること。
pi@raspberrypi$ sudo apt-get update
pi@raspberrypi$ sudo apt-get install --yes \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg2 \
    software-properties-common
pi@raspberrypi$ curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
pi@raspberrypi$ sudo apt-key fingerprint 0EBFCD88
pi@raspberrypi$ echo "deb [arch=armhf] https://download.docker.com/linux/debian \
     $(lsb_release -cs) stable" | \
    sudo tee /etc/apt/sources.list.d/docker.list
pi@raspberrypi$ sudo apt-get update
pi@raspberrypi$ sudo apt-get install --yes docker-ce

# Dockerのバージョンを確認する。(まだdockerグループに追加していないのでsudo付き)
pi@raspberrypi$ sudo docker version
Client:
 Version:      17.03.1-ce
 API version:  1.27
 Go version:   go1.7.5
 Git commit:   c6d412e
 Built:        Mon Mar 27 17:13:32 2017
 OS/Arch:      linux/arm

Server:
 Version:      17.03.1-ce
 API version:  1.27 (minimum version 1.12)
 Go version:   go1.7.5
 Git commit:   c6d412e
 Built:        Mon Mar 27 17:13:32 2017
 OS/Arch:      linux/arm
 Experimental: false

# dockerグループにユーザを追加する。
pi@raspberrypi$ sudo usermod -aG docker ${USER}

# dockerグループへの追加を反映するため、セッションを再起動(再ログイン)する。

# Dockerのバージョンを確認する。(dockerグループに追加したのでsudoなし)
pi@raspberrypi$ docker version
Client:
 Version:      17.03.1-ce
 API version:  1.27
 Go version:   go1.7.5
 Git commit:   c6d412e
 Built:        Mon Mar 27 17:13:32 2017
 OS/Arch:      linux/arm

Server:
 Version:      17.03.1-ce
 API version:  1.27 (minimum version 1.12)
 Go version:   go1.7.5
 Git commit:   c6d412e
 Built:        Mon Mar 27 17:13:32 2017
 OS/Arch:      linux/arm
 Experimental: false

hello-world

動作確認によく使用されるhello-worldイメージですが、x86_64アーキテクチャのイメージであるため、armhfアーキテクチャであるRaspberry Pi上では残念ながら動作しません。

pi@raspberrypi$ docker run -it --rm hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
b04784fba78d: Pull complete
Digest: sha256:f3b3b28a45160805bb16542c9531888519430e9e6d6ffc09d72261b0d26ff74f
Status: Downloaded newer image for hello-world:latest
standard_init_linux.go:178: exec user process caused "exec format error"
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.