みーのぺーじ

みーが趣味でやっているPCやソフトウェアについて.Python, Javascript, Processing, Unityなど.

Raspberry Pi Zero WでDockerを使う

前回の記事で,Raspberry Pi 4BでDockerを使いましたが,思ったよりもリソースが余っているので,より省電力にできないか検討しました.Raspberry Pi Zero WにDockerをインストールして使ってみました.

仕様

Raspberry Pi Zero W

f:id:atsuhiro-me:20210308003718j:plain:w360

  • 802.11 b/g/n wireless LAN
  • Bluetooth 4.1
  • Bluetooth Low Energy (BLE)
  • 1GHz, single-core CPU
  • 512MB RAM
  • Mini HDMI and USB On-The-Go ports
  • Micro USB power
  • HAT-compatible 40-pin header
  • Composite video and reset headers
  • CSI camera connector

Buy a Raspberry Pi Zero W – Raspberry Pi

セットアップ

セットアップはRaspberry Pi 4Bよりも簡単です.余っているUSB充電器とmicroUSBケーブルがあれば給電できますし,microSDカードにRaspberry Pi OSを書き込んで電源を接続すれば起動します.ディスプレイにはmini-HDMIケーブルを用いて接続します.

試しにヒートシンクなしで使ってみましたが,やはりかなり熱くなるのでヒートシンクを取り付けることにしました.しかし,わざわざ購入するのも大袈裟なので,余っていた熱伝導パッドを使って金属片をヒートシンク代わりに取り付けました.

しばらく負荷をかけてみましたが,CPU温度は40℃台で安定していたので,これで十分のようです.

f:id:atsuhiro-me:20210308005042j:plain:w360

Dockerのインストール

https://get.docker.com/のシェルスクリプトを実行するだけです.

PythonをDockerで実行

Raspberry Pi Zero Wで動作するDocker イメージを作成するには,platformをlinux/arm/v6にしてビルドします.

Dockerfile

FROM python:3.8-slim-buster
CMD python --version
$ docker buildx build --platform linux/arm/v6 --tag raspv6:latest  .

これをファイルとして保存します.

$ docker save -o rasp.tar raspv6:latest 

ファイルをUSBスティックでRaspberry Pi Zero Wに移動させ,Dockerに読み込みます.

$ docker load -i rasp.tar

実行します.

$ docker run -it --rm raspv6:latest
Python3.8.8

正常に実行できました.