Appearance
第3章 Docker Engineのインストール
3.1 古いパッケージのクリーンアップ
もし以前に古いバージョンのDockerがインストールされていた場合、新しいDocker Engineのインストール時に競合(エラー)が起きる原因になります。そのため、まずは以下のコマンドを実行して、古い関連パッケージをきれいに削除します。
bash
# 古いDocker関連のパッケージをすべて削除します(無い場合は無視されます)
sudo apt remove -y docker docker-engine docker.io containerd runc3.2 Docker公式リポジトリの登録
最新の安定したDocker Engineをインストールするために、Docker公式のパッケージ配信サーバー(リポジトリ)をDebianのシステムに登録します。
まず、データの暗号化に必要な公式のGPG鍵をダウンロードして保存します。
bash
# 鍵を保存するためのフォルダを作成します
sudo mkdir -p /etc/apt/keyrings
# Docker公式のGPG鍵をダウンロードし、ファイルに書き込みます
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg次に、DebianがDockerの配布サーバーを参照できるように設定ファイルを追加します。
bash
# パッケージの取得元リストにDocker公式リポジトリを登録します
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null3.3 Docker Engineのインストールと動作検証
リポジトリの登録が終わったら、登録情報を読み込んでDockerのインストールを行います。以下のコマンドを実行します。
bash
# 登録したリポジトリの情報をシステムに読み込ませます
sudo apt update
# Dockerの本体、管理ツール、便利なプラグインを一括でインストールします
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-pluginインストールが完了したら、Dockerのサービスを手動で起動し、正常に動いているかテスト用コンテナを使って確認します。
bash
# Dockerのバックグラウンド処理(サービス)を起動します
sudo service docker start
# テスト用コンテナ「hello-world」をダウンロードして実行します
sudo docker run hello-world画面に「Hello from Docker!」とメッセージが表示されれば、Docker Engineのインストールは無事に成功しています。
3.4 非ルートユーザーでのDockerの実行許可
初期状態では、Dockerコマンドを実行するたびに sudo を最初につけて管理者権限で実行する必要があります。これは手間がかかるため、現在のログインユーザーを「dockerグループ」に登録し、sudo なしでコマンドを実行できるように設定を変更します。
bash
# 現在のユーザー($USER)をdockerグループに追加します
sudo usermod -aG docker $USERこの設定変更を適用するために、以下のコマンドを実行するか、一度Debianのターミナル(黒い画面)を閉じて再度起動し直してください。
bash
# グループ設定の変更を現在のログインセッションにすぐに反映させます
newgrp docker
# sudoなしで動作するかテストします
docker run hello-world