概要
ラズパイにDocker環境を構築して作業マシンからアクセス出来るようになるまでの手順をメモします。
何度かやっているのに毎回忘れて調べなおすので、将来の自分のためのメモです。
セキュリティ的によくないので完全に自己責任になります。
環境
RaspberryPiOS(64bit)
2022年4月時点
Dockerのインストール
公式ドキュメント の通り
UFWインストール
ポートが解放できれば何でもよいです。
sudo apt install ufw
systemd 用のファイルを修正
設定内容はこちらのドキュメントを参照
sudo vi /lib/systemd/system/docker.service
この修正をすることで12375ポートでdockerdにアクセスできるようになります。
docker-ceパッケージにてそれっぽい設定ファイルとかも準備されるのですが、結局デーモンの起動はここでべた書きなのでこれしか方法がない気がします。
他にいい方法があればぜひ共有いただきたいです。
変更点
[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
- ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
+ ExecStart=/usr/bin/dockerd -H 0.0.0.0:12375 -H fd:// --containerd=/run/containerd/containerd.sock
ExecReload=/bin/kill -s HUP $MAINPID
TimeoutSec=0
RestartSec=2
Restart=always
デーモンの再起動
sudo systemctl daemon-reload
sudo systemctl restart docker.service
ポートの開放
sudo ufw allow 12375
IntelliJからこんな感じでアクセスできる
さいごに
最近DockerDesktopが有料化されたりしているので、この方法をあとちょっとだけ工夫すれば開発環境のコスト削減につながるかも?