・Rasberry Pi(Ubuntu)上でコンテナを使いたい人
・Docker Engineをインストールしたい人
・Docker Compose(v2)をインストールしたい人
・DockerDesktopを使わずに、DockerComposeを使いたい人
ターゲットデバイス:Rasberry Pi 4 または Rasberry Pi 5
OS:Ubuntu 24.04.3 LTS (GNU/Linux 6.8.0-1041-raspi aarch64)
ターゲットデバイスへの接続方法:SSH接続(コマンドプロンプト操作)
SSH接続元OS:Windows10/11
※SSHの設定方法はこちらで紹介してます。

Ubuntuで開発するってなったら、Docker使ってみたいよね!
Dockerの環境構築から、ちゃちゃっと終わらせましょう!
DockerDesktopはあえて使わず、UI無しに挑戦だ!
もくじ
Step1:Docker Engineのインストール
公式のインストールスクリプトを使用することで、Rasberry PiのARMアーキテクチャに最適なDocker Engineを自動で導入できます。
参考:Docker公式

1. SSHでRasberry Pi(Ubuntu)に接続
まずは、コマンドプロンプトからRasberry Pi(Ubuntu)にSSHで接続します。

設定方法と接続方法はこちらを参考に!
2. Dokcerのaptリポジトリをセットアップ
下記のコマンドをSSH接続したRasberry Pi上で実行。
# Add Docker's official GPG key:
sudo apt update
sudo apt install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Add the repository to Apt sources:
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Signed-By: /etc/apt/keyrings/docker.asc
EOF
sudo apt update途中で「Do you want to continue?」と聞かれたら「Y」を入力しEnterを押下。

2. Dockerパッケージのインストール
下記のコマンドで、最新版のパッケージをインストールします。
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin途中で「Do you want to continue?」と聞かれたら「Y」を入力しEnterを押下。
3. 動作確認
インストール後はDockerサービスは自動で起動します。
下記のコマンドで、Dockerが起動していることを確認します。
sudo systemctl status docker画像のように、「Activate」が「avtive(running)」となっていたらOKです。

※もし、起動していなければ下記のコマンドで起動します。
sudo systemctl start dockerDocker composeコマンドが使えるか確認しましょう。
下記のコマンドを実行。
docker compose version画像のように、v2以降のものが出力されればOKです。


これで、Dockerのコマンドが使えるようになったよ!
簡単なDockerアプリを作って動かしてみよう!
Step2:hello-worldを動かしてみる
Step1が完了したら、Dockerが使える状態です。試しに、Dockerが実行できるか確認してみよう。
下記コマンドを実行。
docker run hello-world画像のように、Dockerコマンドは通っているが、「Permission」が拒否されたと表示された。

これは、ユーザー権限の設定がまだシステムに反映されていないことが原因です。
反映させるために、下記のコマンドでシステムにユーザーセッションをリロードさせます。
newgrp docker※もしくは、一度SSHの接続を切断し、再度接続してください。
これで、権限エラーは消えるはずです。もう一度、下記のコマンドを実行しましょう。
docker run hello-world画像のように、「Hello from Docker!」などの文言が表示されたらOKです。

正常にインストールでき、Docker上でコンテナが起動できたことが確認できました。
おわり
今回はRasberry Piっ上のUbuntu環境にDocker Engineをオンストールしました。
これにより、DockerDesktopなしでコンテナを動かせるLinux環境が手に入りました。

コンテナを動かす準備完了!
次はこの環境を使ってシンプルなWebAppをコンテナ化して動かしてみよう!
SEの時間外労働 
