Raspberry Pi に Docker と Docker Compose をインストールする

Raspberry Pi に Docker と Docker Compose をインストールする方法を解説します。

実施環境は、以下です。
OS : Raspberry Pi OS Lite (64-bit)、OSバージョン 11 (bullseye)、カーネルバージョン 5.15.56-v8+

Dockerコンテナを起動するには、Dockerイメージが必要です。
それぞれのDockerイメージは、特定のCPUアーキテクチャー向けにビルドされており、それぞれのDockerイメージは、対応するCPUアーキテクチャーがあります。
Raspberry Pi OSは、32bit版と64bit版とがあります。それぞれ arm32v7、arm64v8が、対応するCPUアーキテクチャーです。
Dockerイメージの中には、「arm32v7向けにビルドされたイメージは用意されていない。arm64v8向けにビルドされたイメージは用意されている」ものもあり、Raspberry Pi OS は、32版を使用するよりも、64bit版を使用する方が、苦労が少ない。

解説

インストールの流れは以下です。

  1. インストールされているかの確認
  2. インストール
  3. 操作しているユーザーを、グループdockerに所属させる
  4. Composerのインストール
  5. composerコマンドを、どのディレクトリからでも実行できるようにする

インストール

インストールされているかの確認

以下のコマンドを実行し、Docker がインストールされているかを確認します。



コマンドの結果、
「-bash: php: command not found」のように表示された場合は、Docker は、インストールされていません。
「Docker version X.X.X」のように表示された場合は、Docker は、既にインストールされています。

インストール

以下のコマンドを実行し、Docker をインストールします。



インストールが完了するまで、数分待ちます。

操作しているユーザーを、グループdockerに所属させる

以下のコマンドを実行し、操作しているユーザー(今回は pi )を グループ docker に所属させます。



コマンドオプション解説)

-aG
-a : 必ずGオプションと併用する。指定したグループに指定したユーザーを追加する。

OSへのログインし直し

ユーザーのグループdockerへの所属を反映させるために、OSへのログインし直しが必要です。

一度ログアウトし、再度ログインします。(もしくは、OSを再起動して、再度ログインします)

動作確認

nginxコンテナの起動

Dockerの動作確認として、以下のコマンドを実行し、nginxコンテナを起動します。



コンテナの初回起動は、時間を要します。
起動が完了すると、プロンプトがコマンド入力待ち状態になります。
起動が完了するまで、数分待ちます。

他のデバイスからアクセス

ブラウザで、アクセスしてみる。
http://[Raspberry Pi のIPアドレス]:8080

nginxのデフォルトページが表示されます。

nginxコンテナの停止

起動しているコンテナを停止するコマンドは以下です。



ます、以下のコマンドを実行し、起動しているnginxコンテナのコンテナIDを確認します。



コマンドの結果、以下のように表示されました。



今、起動しているnginxのコンテナIDは、「49c0bbddb7f2」です。

続いて、以下のコマンドを実行し、起動しているnginxコンテナを停止します。

Docker Composeのインストール

複数のコンテナを定義し実行する Docker アプリケーションのためのツールである Docker Compse もインストールします。

pipのインストール

Docker Composeは、pipを使ってインストールします。
pip : Pythonで書かれたパッケージソフトをインストール・管理するためのパッケージ管理システム。
pipをインストールしていない場合は、以下のコマンドを実行し、pipをインストールします。

Docker Composeのインストール

以下のコマンドを実行し、Docker Compose をインストールします。

参考

ユーザーの所属グループの確認

ユーザーの所属グループを確認するには、以下のコマンドを実行します。

現在のユーザーの所属グループの確認

現在のユーザーの所属グループを確認するには、以下のコマンドを実行します。

起動しているコンテナの確認

起動しているコンテナを確認するには、Dockerプロセスステータスを表示する、以下のコマンドを実行します。

ローカルに保存されているコンテナイメージの確認

ローカルに保存されているコンテナイメージを確認するには、以下のコマンドを実行します。

Docker Composeのバージョンの確認

Docker Composeのバージョンを確認するには、以下のコマンドを実行します。

pipのバージョンの確認

pipのバージョンを確認するには、以下のコマンドを実行します。

参考ウェブサイト