お久しぶりです。
RaspberryPiが余っていたのでせっかくなら活用しようということで、簡易サーバー化してみました。
今回は、タイトルにもある通り超簡単に、RaspberryPiでDocker+Portainerを動かす方法について書いていきたいと思います。
初心者の方の参考になればと思います。
準備するもの
RaspberryPi 4Bを今回は使用します。
- RaspberryPi 4B (4GB)
- RaspberryPi OS (64bit推奨)を書き込んだSDカード
- Windows PC(Macでも可)
RaspberryPiをWiFiに接続して準備は完了です。
方法
1. SSHによるパソコンとの接続
SSHでの接続は簡単です。
WindowsPCのコマンドプロントから以下のコマンドを打ち込みます。
ssh <RaspberryPiのユーザーネーム>@<RaspberryPiのIP>
RaspberryPiのユーザーネームは、初期値ではPiになっていることが多いです。変更している場合は、変更したユーザーネームを使用してください。
RaspberryPiのIPは、RaspberryPiのコンソールから以下のコマンドで確認できます。
hostname -I
これでSSH接続ができるようになりました。
2. Dockerのインストール
公式スクリプトを使用してDockerをインストールします。
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker pi
これでDockerが導入されました。確認したい場合は以下のコマンドで確認できます。
docker --version
3. Portainerの導入
PortainerはDockerコンテナをGUIで管理できるツールです。
ポート9443を使用する場合(推奨)
docker volume create portainer_data
docker run -d -p 9443:9443 \
--name portainer \
--restart=always \
-v /var/run/docker.sock:/var/run/docker.sock \
-v portainer_data:/data \
portainer/portainer-ce:latest
ポート9000を使用する場合(非推奨)
docker volume create portainer_data
docker run -d -p 9000:9000 \
--name portainer \
--restart=always \
-v /var/run/docker.sock:/var/run/docker.sock \
-v portainer_data:/data \
portainer/portainer-ce:latest
--restart=always \
このようにalwaysでrestartするように設定することで、RaspberryPiの電源をつけると自動で起動するようになります。常時稼働をしたい人にはお勧めの設定です。
ポート:
今回は9443を使用しています。
- 9000:HTTP管理画面(非推奨)
- 9443:HTTPS管理画面(推奨)
アクセス:
以下のリンクをブラウザで開くとアクセスできます。
https://<raspberrypiのIP>:9443
9000のポートを使用した場合
http://<raspberrypiのIP>:9000
ufwを使用している場合は以下のコマンドでポートを許可してください。
sudo ufw allow 9443/tcp (9000/tcp)
sudo ufw reload
docker ps
で動作しているかの確認ができます。
0.0.0.0:9443->9443/tcp
と表示されていたら成功です。
今回紹介したのはLAN内での接続です。
0.0.0.0
で同じWiFiに接続されているすべての機器で確認できます。RaspberryPi内で完結させたい場合は
-p 127.0.0.1:9443:9443 \
と変更することで127.0.0.1
にバインドすることができます。
最後に
これで初心者の方でも簡単にRaspberryPiにDokerを導入して、GUIで操作できるようになります!
気になった方はぜひ試してみてください。