Raspberry PiにDockerを入れる備忘録(失敗

Raspberry Pi zero にDockerを入れようとしたけどDaemonが起動できなくて泣いた話

結論

インストールはこれでおkのはず

$ sudo apt-get install docker-ce=18.06.1~ce~3-0~raspbian

ただ、どのイメージをrunしても何も起こらない。

わけわからん

ハマりログ

これはダメでした

pi@raspberrypi:~ $ sudo apt-get install docker-ce=18.06.1~ce~3-0~raspbian
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
E: パッケージ docker-ce が見つかりません

これはDocker daemonが起動しません

curl -sSL https://get.docker.com | sh


pi@raspberrypi:~ $ sudo usermod -aG docker pi
pi@raspberrypi:~ $ docker -v
Docker version 18.09.0, build 4d60db4
pi@raspberrypi:~ $ docker pull hello-world
Using default tag: latest
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

んで

docker-ce segmentation fault on Raspbian (v18.09.03)

GitHubにいい感じのissueがあったので上記のページを参考に

pi@raspberrypi:~ $  sudo apt-get install docker-ce=18.06.1~ce~3-0~raspbian
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
  containerd.io
これを削除するには 'sudo apt autoremove' を利用してください。
推奨パッケージ:
  aufs-tools cgroupfs-mount | cgroup-lite pigz
以下のパッケージは「削除」されます:
  docker-ce-cli
以下のパッケージは「ダウングレード」されます:
  docker-ce
アップグレード: 0 個、新規インストール: 0 個、ダウングレード: 1 個、削除: 1 個、保留: 5 個。
28.3 MB のアーカイブを取得する必要があります。
この操作後に追加で 39.0 MB のディスク容量が消費されます。
続行しますか? [Y/n] Y
取得:1 https://download.docker.com/linux/raspbian stretch/stable armhf docker-ce armhf 18.06.1~ce~3-0~raspbian [28.3 MB]
28.3 MB を 32秒 で取得しました (861 kB/s)
dpkg: docker-ce-cli: 依存関係に問題があります。しかし要求に従い削除しています:
 docker-ce は以下に依存 (depends) します: docker-ce-cli.

(データベースを読み込んでいます ... 現在 134626 個のファイルとディレクトリがインストールされています。)
docker-ce-cli (5:18.09.0~3-0~raspbian-stretch) を削除しています ...
dpkg: 警告: docker-ce を 5:18.09.0~3-0~raspbian-stretch から 18.06.1~ce~3-0~raspbian にダウングレードしています
(データベースを読み込んでいます ... 現在 134436 個のファイルとディレクトリがインストールされています。)
.../docker-ce_18.06.1~ce~3-0~raspbian_armhf.deb を展開する準備をしています ...
docker-ce (18.06.1~ce~3-0~raspbian) で (5:18.09.0~3-0~raspbian-stretch に) 上書き展開しています ...
docker-ce (18.06.1~ce~3-0~raspbian) を設定しています ...
Created symlink /etc/systemd/system/sockets.target.wants/docker.socket → /lib/systemd/system/docker.socket.
systemd (232-25+deb9u11) のトリガを処理しています ...
man-db (2.7.6.1-2) のトリガを処理しています ...

ん〜いけそう

docker versionしてみる

pi@raspberrypi:~ $ sudo docker version
Client:
 Version:           18.06.1-ce
 API version:       1.38
 Go version:        go1.10.3
 Git commit:        e68fc7a
 Built:             Tue Aug 21 17:30:52 2018
 OS/Arch:           linux/arm
 Experimental:      false

Server:
 Engine:
  Version:          18.06.1-ce
  API version:      1.38 (minimum version 1.12)
  Go version:       go1.10.3
  Git commit:       e68fc7a
  Built:            Tue Aug 21 17:26:37 2018
  OS/Arch:          linux/arm

Hello Worldしよう

pi@raspberrypi:~ $ sudo docker pull hello-world
Using default tag: latest
latest: Pulling from library/hello-world
c1eda109e4da: Pull complete
Digest: sha256:92695bc579f31df7a63da6922075d0666e565ceccad16b59c3374d2cf4e8e50e
Status: Downloaded newer image for hello-world:latest
pi@raspberrypi:~ $ sudo docker run hello-world
// 何も出力されない

は?

他のdocker imageも試してみたけど全部runのところで何もせずに終わる。

わけわからん

Licensed under CC BY-NC-ND 4.0
Built with Hugo
テーマ StackJimmy によって設計されています。