以下のバージョンのUbuntuにDockerをインストールしていきます
frees@frees:~$ cat /etc/issue
Ubuntu 24.04.1 LTS \n \l
apt update
まずは、リポジトリをアップデートします。以下のコマンドを実行します
sudo apt update
以下は実行結果です
frees@frees:~$ sudo apt update
[sudo] frees のパスワード:
ヒット:1 https://packages.microsoft.com/repos/code stable InRelease
取得:2 http://security.ubuntu.com/ubuntu noble-security InRelease [126 kB]
ヒット:3 http://jp.archive.ubuntu.com/ubuntu noble InRelease
取得:4 https://pkgs.tailscale.com/stable/ubuntu noble InRelease
取得:5 http://jp.archive.ubuntu.com/ubuntu noble-updates InRelease [126 kB]
取得:6 http://security.ubuntu.com/ubuntu noble-security/main amd64 Components [7200 B]
取得:7 http://security.ubuntu.com/ubuntu noble-security/restricted amd64 Components [212 B]
取得:8 http://security.ubuntu.com/ubuntu noble-security/universe amd64 Components [52.0 kB]
取得:9 http://security.ubuntu.com/ubuntu noble-security/multiverse amd64 Components [212 B]
取得:10 http://jp.archive.ubuntu.com/ubuntu noble-backports InRelease [126 kB]
取得:11 http://jp.archive.ubuntu.com/ubuntu noble-updates/main amd64 Components [151 kB]
取得:12 http://jp.archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Components [212 B]
取得:13 http://jp.archive.ubuntu.com/ubuntu noble-updates/universe amd64 Components [310 kB]
取得:14 http://jp.archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Components [940 B]
取得:15 http://jp.archive.ubuntu.com/ubuntu noble-backports/main amd64 Components [208 B]
取得:16 http://jp.archive.ubuntu.com/ubuntu noble-backports/restricted amd64 Components [212 B]
取得:17 http://jp.archive.ubuntu.com/ubuntu noble-backports/universe amd64 Components [11.7 kB]
取得:18 http://jp.archive.ubuntu.com/ubuntu noble-backports/multiverse amd64 Components [212 B]
919 kB を 3秒 で取得しました (283 kB/s)
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
状態情報を読み取っています... 完了
アップグレードできるパッケージが 5 個あります。表示するには 'apt list --upgradable' を実行してください。
既存のdockerをアンインストール
以下のコマンドですでにインストールしてあるdockerをアンインストールします。
dockerをすでにインストールしていない場合は不要ですが、実行しても問題ありません
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
frees@frees:~$ for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
状態情報を読み取っています... 完了
パッケージ 'docker.io' はインストールされていないため削除もされません
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 5 個。
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
状態情報を読み取っています... 完了
パッケージ 'docker-doc' はインストールされていないため削除もされません
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 5 個。
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
状態情報を読み取っています... 完了
パッケージ 'docker-compose' はインストールされていないため削除もされません
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 5 個。
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
状態情報を読み取っています... 完了
パッケージ 'docker-compose-v2' はインストールされていないため削除もされません
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 5 個。
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
状態情報を読み取っています... 完了
パッケージ 'podman-docker' はインストールされていないため削除もされません
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 5 個。
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
状態情報を読み取っています... 完了
パッケージ 'containerd' はインストールされていないため削除もされません
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 5 個。
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
状態情報を読み取っています... 完了
パッケージ 'runc' はインストールされていないため削除もされません
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 5 個。
frees@frees:~$ sudo apt-get install ca-certificates curl
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
状態情報を読み取っています... 完了
ca-certificates はすでに最新バージョン (20240203) です。
ca-certificates は手動でインストールしたと設定されました。
curl はすでに最新バージョン (8.5.0-2ubuntu10.6) です。
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 5 個。
Key
aptでインストールする際にパッケージが信頼できることを証明するために公開鍵を登録をします
/etc/apt/keyrings作成
「/etc/apt/keyrings」ディレクトリを作成します
sudo install -m 0755 -d /etc/apt/keyrings
gpgダウンロード
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
chmod
sudo chmod a+r /etc/apt/keyrings/docker.asc
sourceリストに追加
aptのsourceリストにdockerを追加します
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
リポジトリアップデート
sudo apt-get update
以下は実行した結果です
frees@frees:~$ sudo apt-get update
取得:1 https://download.docker.com/linux/ubuntu noble InRelease [48.8 kB]
ヒット:2 https://packages.microsoft.com/repos/code stable InRelease
取得:3 https://download.docker.com/linux/ubuntu noble/stable amd64 Packages [17.2 kB]
ヒット:4 http://jp.archive.ubuntu.com/ubuntu noble InRelease
ヒット:5 http://jp.archive.ubuntu.com/ubuntu noble-updates InRelease
ヒット:6 http://security.ubuntu.com/ubuntu noble-security InRelease
取得:7 https://pkgs.tailscale.com/stable/ubuntu noble InRelease
ヒット:8 http://jp.archive.ubuntu.com/ubuntu noble-backports InRelease
72.6 kB を 1秒 で取得しました (69.1 kB/s)
パッケージリストを読み込んでいます... 完了
Dockerインストール
以下のコマンドでdockerをインストールします
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
以下は実行結果です
frees@frees:~$ sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
状態情報を読み取っています... 完了
以下の追加パッケージがインストールされます:
docker-ce-rootless-extras libslirp0 pigz slirp4netns
提案パッケージ:
aufs-tools cgroupfs-mount | cgroup-lite
以下のパッケージが新たにインストールされます:
containerd.io docker-buildx-plugin docker-ce docker-ce-cli docker-ce-rootless-extras docker-compose-plugin libslirp0 pigz slirp4netns
アップグレード: 0 個、新規インストール: 9 個、削除: 0 個、保留: 5 個。
124 MB のアーカイブを取得する必要があります。
この操作後に追加で 445 MB のディスク容量が消費されます。
続行しますか? [Y/n] Y
取得:1 https://download.docker.com/linux/ubuntu noble/stable amd64 containerd.io amd64 1.7.24-1 [29.5 MB]
取得:2 http://jp.archive.ubuntu.com/ubuntu noble/universe amd64 pigz amd64 2.8-1 [65.6 kB]
取得:3 https://download.docker.com/linux/ubuntu noble/stable amd64 docker-buildx-plugin amd64 0.19.3-1~ubuntu.24.04~noble [30.7 MB]
取得:4 http://jp.archive.ubuntu.com/ubuntu noble/main amd64 libslirp0 amd64 4.7.0-1ubuntu3 [63.8 kB]
取得:5 http://jp.archive.ubuntu.com/ubuntu noble/universe amd64 slirp4netns amd64 1.2.1-1build2 [34.9 kB]
取得:6 https://download.docker.com/linux/ubuntu noble/stable amd64 docker-ce-cli amd64 5:27.4.1-1~ubuntu.24.04~noble [15.1 MB]
取得:7 https://download.docker.com/linux/ubuntu noble/stable amd64 docker-ce amd64 5:27.4.1-1~ubuntu.24.04~noble [25.9 MB]
取得:8 https://download.docker.com/linux/ubuntu noble/stable amd64 docker-ce-rootless-extras amd64 5:27.4.1-1~ubuntu.24.04~noble [9589 kB]
取得:9 https://download.docker.com/linux/ubuntu noble/stable amd64 docker-compose-plugin amd64 2.32.1-1~ubuntu.24.04~noble [12.8 MB]
124 MB を 4秒 で取得しました (32.8 MB/s)
以前に未選択のパッケージ pigz を選択しています。
(データベースを読み込んでいます ... 現在 416083 個のファイルとディレクトリがインストールされています。)
.../0-pigz_2.8-1_amd64.deb を展開する準備をしています ...
pigz (2.8-1) を展開しています...
以前に未選択のパッケージ containerd.io を選択しています。
.../1-containerd.io_1.7.24-1_amd64.deb を展開する準備をしています ...
containerd.io (1.7.24-1) を展開しています...
以前に未選択のパッケージ docker-buildx-plugin を選択しています。
.../2-docker-buildx-plugin_0.19.3-1~ubuntu.24.04~noble_amd64.deb を展開する準備をしています ...
docker-buildx-plugin (0.19.3-1~ubuntu.24.04~noble) を展開しています...
以前に未選択のパッケージ docker-ce-cli を選択しています。
.../3-docker-ce-cli_5%3a27.4.1-1~ubuntu.24.04~noble_amd64.deb を展開する準備をしています ...
docker-ce-cli (5:27.4.1-1~ubuntu.24.04~noble) を展開しています...
以前に未選択のパッケージ docker-ce を選択しています。
.../4-docker-ce_5%3a27.4.1-1~ubuntu.24.04~noble_amd64.deb を展開する準備をしています ...
docker-ce (5:27.4.1-1~ubuntu.24.04~noble) を展開しています...
以前に未選択のパッケージ docker-ce-rootless-extras を選択しています。
.../5-docker-ce-rootless-extras_5%3a27.4.1-1~ubuntu.24.04~noble_amd64.deb を展開する準備をしています ...
docker-ce-rootless-extras (5:27.4.1-1~ubuntu.24.04~noble) を展開しています...
以前に未選択のパッケージ docker-compose-plugin を選択しています。
.../6-docker-compose-plugin_2.32.1-1~ubuntu.24.04~noble_amd64.deb を展開する準備をしています ...
docker-compose-plugin (2.32.1-1~ubuntu.24.04~noble) を展開しています...
以前に未選択のパッケージ libslirp0:amd64 を選択しています。
.../7-libslirp0_4.7.0-1ubuntu3_amd64.deb を展開する準備をしています ...
libslirp0:amd64 (4.7.0-1ubuntu3) を展開しています...
以前に未選択のパッケージ slirp4netns を選択しています。
.../8-slirp4netns_1.2.1-1build2_amd64.deb を展開する準備をしています ...
slirp4netns (1.2.1-1build2) を展開しています...
docker-buildx-plugin (0.19.3-1~ubuntu.24.04~noble) を設定しています ...
containerd.io (1.7.24-1) を設定しています ...
Created symlink /etc/systemd/system/multi-user.target.wants/containerd.service → /usr/lib/systemd/system/containerd.service.
docker-compose-plugin (2.32.1-1~ubuntu.24.04~noble) を設定しています ...
docker-ce-cli (5:27.4.1-1~ubuntu.24.04~noble) を設定しています ...
libslirp0:amd64 (4.7.0-1ubuntu3) を設定しています ...
pigz (2.8-1) を設定しています ...
docker-ce-rootless-extras (5:27.4.1-1~ubuntu.24.04~noble) を設定しています ...
slirp4netns (1.2.1-1build2) を設定しています ...
docker-ce (5:27.4.1-1~ubuntu.24.04~noble) を設定しています ...
Created symlink /etc/systemd/system/multi-user.target.wants/docker.service → /usr/lib/systemd/system/docker.service.
Created symlink /etc/systemd/system/sockets.target.wants/docker.socket → /usr/lib/systemd/system/docker.socket.
man-db (2.12.0-4build2) のトリガを処理しています ...
libc-bin (2.39-0ubuntu8.3) のトリガを処理しています ...
frees@frees:~$
動作確認
以下のコマンドでdockerが正常にインストールしたか確認できます
sudo docker run hello-world
以下は上記コマンドの実行結果です。「Hello from Docker!」が出力されたらインストール成功です
frees@frees:~$ sudo docker run hello-world
Hello from Docker!
This message shows that your installation appears to be working correctly.
To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
(amd64)
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.
To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash
Share images, automate workflows, and more with a free Docker ID:
https://hub.docker.com/
For more examples and ideas, visit:
https://docs.docker.com/get-started/
参考
Ubuntu
Jumpstart your client-side server applications with Docker Engine on Ubuntu. This guide details prerequisites and multip...
コメント