2017年5月27日土曜日

Raspberry Pi3: Barge

ゴールデンウィーク中、Raspberry Pi3 をいじっておりました。Flint OS はちょっと期待外れでしたが、次は Barge をインストールしてみます。

Barge(Docker ホスト用軽量 OS)って?
http://qiita.com/A-I/items/8dc7ddc52e6038b5c74b

前々から Docker というものに興味があったものの、ドキュメントを読むだけではいまいち OpenVZ との違いが判らず、実際に使ってみたいと思ったのです。

Barge Releases
https://github.com/bargees/barge-os/releases

リリースのページから Raspberry Pi3 用のイメージファイルをダウンロードします。イメージ名に -rpi とついているものが Raspberry Pi 用です。現時点で最新版は 2.4.4-rpi です。img ファイルを落として、SD カードに書き込みます。

Etcher
https://etcher.io/

書き込みツールは Etcher というツールを使いました。管理者権限で起動して、SD カードに barge-rpi.img を書き込みます。

書き込んだ SD カードを Raspberry Pi3 に取り付けて起動します。SSH が自動で起動するので、ここから先はリモートからでも作業できます。

ユーザー名: bargee
パスワード: bargee

でログインできます。
Welcome to Barge 2.4.4-rpi, Docker version 1.10.3, build 20f81dd
[bargee@barge ~]$
インストール後の初期設定は、こちらのサイトを参考にしました。

Raspberry PiにBargeをインストールしてDocker環境を構築してみる
https://blog.straygeek.net/barge-on-raspberrypi/

追加スクリプトをチェックアウトして、SD カードをフォーマットし、タイムゾーンを設定しました。(WiFi は使用しないので飛ばしました)ちなみに 8GB の microSD は再起動後こんな感じになりました。
[bargee@barge ~]$ df -h
Filesystem                Size      Used Available Use% Mounted on
tmpfs                   802.8M     76.2M    726.6M   9% /
devtmpfs                428.8M         0    428.8M   0% /dev
tmpfs                   446.0M     68.0K    445.9M   0% /run
/dev/mmcblk0p2            6.0G     29.6M      5.7G   1% /mnt/data
overlay                   6.0G     29.6M      5.7G   1% /etc
/dev/mmcblk0p2            6.0G     29.6M      5.7G   1% /mnt/mmcblk0p2
cgroup                  446.0M         0    446.0M   0% /sys/fs/cgroup
Docker も特にこだわりはないので、最新版にアップグレードしました。
[bargee@barge ~]$ sudo /etc/init.d/docker restart latest
[bargee@barge ~]$ docker version
Client:
 Version:      17.05.0-ce
 API version:  1.29
 Go version:   go1.7.5
 Git commit:   89658bed6
 Built:        Fri May  5 20:55:19 2017
 OS/Arch:      linux/arm
Server:
 Version:      17.05.0-ce
 API version:  1.29 (minimum version 1.12)
 Go version:   go1.7.5
 Git commit:   89658bed6
 Built:        Fri May  5 20:55:19 2017
 OS/Arch:      linux/arm
 Experimental: false
動作確認には、参考サイト同様 netdata を動かしてみました。
[bargee@barge ~]$ docker container run -d --name netdata -p 19999:19999 mhiro2/rpi-netdata
Unable to find image 'mhiro2/rpi-netdata:latest' locally
latest: Pulling from mhiro2/rpi-netdata
e17c946d8542: Pull complete
a3ed95caeb02: Pull complete
fc5d9d1b247b: Pull complete
Digest: sha256:5a90e63330ba7d752474aa221467cf3a1b171c3aa72cfa8344532a1eef63874e
Status: Downloaded newer image for mhiro2/rpi-netdata:latest
6f6ed774b99d786d9091994df3e93f0be18ef848f1128d051e581da016b1bd40
ネットからデータをダウンロードしてイメージが起動しました。他の PC からブラウザでラズパイの 19999 ポートにアクセスするとラズパイのハードウェアステータス情報がウェブを通して監視できるようになります。
ひとまず初期設定はここまで。ボチボチ使ってみようと思います。