本記事では、WindowsにてLinux Ubuntuが利用できるWindows Subsystem for Linux 2 (WSL2)上で仮想環境プラットフォーム「Docker」をインストールする方法を紹介します。
Windowsの「WSL2」上で「Docker」
Windows10/11では、「WSL 2」 (Windows Subsystem for Linux 2 )をインストールすることでLinux UbuntuをWindows上で利用できます。本記事では、このWSL2上で仮想環境プラットフォーム「Docker」をインストールする方法を紹介します。
改めてお伝えすると、「WSL2」には、前バージョンとして「WSL1」があります。この「WSL 1」だけでは「Docker」はインストールができません。このため「docker」使用には「WSL 2」のインストールが必須となります。
■「WSL 2」 をまだWindowsにインストールしていない方は、以下記事をご参照しインストールしてください。
■macOSのUnix系環境でも、Linux環境同様にDockerを利用することも出来ます。
以下の環境下でインストールを想定します。
- Docker (Windows Subsystem for Linux 2 @Windows 10 & 11)
バージョン 20.21
Windows10/11の「WSL2」環境下で「Docker」のインストール方法
以下はWSL2でのコマンドラインです。
初期設定
①まず、updateとupgradeを行っておきます。
$ sudo apt-get update
$ sudo apt-get upgrade
②次に、HTTPS経由でDockerリポトジを使用するためのパッケージをインストールします。
$ sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
Reading package lists... Done
Building dependency tree
Reading state information... Done
ca-certificates is already the newest version (20211016~18.04.1).
ca-certificates set to manually installed.
curl is already the newest version (7.58.0-2ubuntu3.21).
curl set to manually installed.
software-properties-common is already the newest version (0.96.24.32.18).
software-properties-common set to manually installed.
The following NEW packages will be installed:
apt-transport-https gnupg-agent
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 9216 B of archives.
After this operation, 197 kB of additional disk space will be used.
Do you want to continue? [Y/n] ←Yを選択
Get:1 http://archive.ubuntu.com/ubuntu bionic-updates/universe amd64 apt-transport-https all 1.6.14 [4348 B]
Get:2 http://archive.ubuntu.com/ubuntu bionic-updates/universe amd64 gnupg-agent all 2.2.4-1ubuntu1.6 [4868 B]
Fetched 9216 B in 1s (11.8 kB/s)
Selecting previously unselected package apt-transport-https.
(Reading database ... 55524 files and directories currently installed.)
Preparing to unpack .../apt-transport-https_1.6.14_all.deb ...
Unpacking apt-transport-https (1.6.14) ...
Selecting previously unselected package gnupg-agent.
Preparing to unpack .../gnupg-agent_2.2.4-1ubuntu1.6_all.deb ...
Unpacking gnupg-agent (2.2.4-1ubuntu1.6) ...
Setting up apt-transport-https (1.6.14) ...
Setting up gnupg-agent (2.2.4-1ubuntu1.6) ...
③次に、Dockerの公式GPGキーを追加します。
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
OK
④そして、リポジトリへの追加を行います。
$ sudo apt-key fingerprint 0EBFCD88
pub rsa4096 2017-02-22 [SCEA]
9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid [ unknown] Docker Release (CE deb) <docker@docker.com>
sub rsa4096 2017-02-22 [S]
⑤リポトジソースに追加
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
コマンドラインからDockerのインストール
①再度、updateとupgradeを繰り返します。
$ sudo apt-get update
$ sudo apt-get upgrade
②Dockerのインストールを行います。今回インストールするのは、Dockerの無償版であるDocker-CEです。
$sudo apt-get install docker-ce docker-ce-cli containerd.io
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
dbus-user-session docker-ce-rootless-extras docker-scan-plugin pigz
Suggested packages:
aufs-tools cgroupfs-mount | cgroup-lite
Recommended packages:
slirp4netns
The following NEW packages will be installed:
containerd.io dbus-user-session docker-ce docker-ce-cli docker-ce-rootless-extras docker-scan-plugin pigz
0 upgraded, 7 newly installed, 0 to remove and 0 not upgraded.
Need to get 102 MB of archives.
After this operation, 383 MB of additional disk space will be used.
Do you want to continue? [Y/n] y ←Yを選択
Get:1 https://download.docker.com/linux/ubuntu bionic/stable amd64 containerd.io amd64 1.6.10-1 [27.7 MB]
Get:2 http://archive.ubuntu.com/ubuntu bionic/universe amd64 pigz amd64 2.4-1 [57.4 kB]
Get:3 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64 dbus-user-session amd64 1.12.2-1ubuntu1.4 [9388 B]
Get:4 https://download.docker.com/linux/ubuntu bionic/stable amd64 docker-ce-cli amd64 5:20.10.21~3-0~ubuntu-bionic [41.5 MB]
Get:5 https://download.docker.com/linux/ubuntu bionic/stable amd64 docker-ce amd64 5:20.10.21~3-0~ubuntu-bionic [20.5 MB]
Get:6 https://download.docker.com/linux/ubuntu bionic/stable amd64 docker-ce-rootless-extras amd64 5:20.10.21~3-0~ubuntu-bionic [8391 kB]
Get:7 https://download.docker.com/linux/ubuntu bionic/stable amd64 docker-scan-plugin amd64 0.21.0~ubuntu-bionic [3622 kB]
Fetched 102 MB in 17s (6049 kB/s)
Selecting previously unselected package pigz.
(Reading database ... 55532 files and directories currently installed.)
Preparing to unpack .../0-pigz_2.4-1_amd64.deb ...
Unpacking pigz (2.4-1) ...
Selecting previously unselected package containerd.io.
Preparing to unpack .../1-containerd.io_1.6.10-1_amd64.deb ...
Unpacking containerd.io (1.6.10-1) ...
Selecting previously unselected package dbus-user-session.
Preparing to unpack .../2-dbus-user-session_1.12.2-1ubuntu1.4_amd64.deb ...
Unpacking dbus-user-session (1.12.2-1ubuntu1.4) ...
Selecting previously unselected package docker-ce-cli.
Preparing to unpack .../3-docker-ce-cli_5%3a20.10.21~3-0~ubuntu-bionic_amd64.deb ...
Unpacking docker-ce-cli (5:20.10.21~3-0~ubuntu-bionic) ...
Selecting previously unselected package docker-ce.
Preparing to unpack .../4-docker-ce_5%3a20.10.21~3-0~ubuntu-bionic_amd64.deb ...
Unpacking docker-ce (5:20.10.21~3-0~ubuntu-bionic) ...
Selecting previously unselected package docker-ce-rootless-extras.
Preparing to unpack .../5-docker-ce-rootless-extras_5%3a20.10.21~3-0~ubuntu-bionic_amd64.deb ...
Unpacking docker-ce-rootless-extras (5:20.10.21~3-0~ubuntu-bionic) ...
Selecting previously unselected package docker-scan-plugin.
Preparing to unpack .../6-docker-scan-plugin_0.21.0~ubuntu-bionic_amd64.deb ...
Unpacking docker-scan-plugin (0.21.0~ubuntu-bionic) ...
Setting up containerd.io (1.6.10-1) ...
Created symlink /etc/systemd/system/multi-user.target.wants/containerd.service → /lib/systemd/system/containerd.service.
Setting up docker-scan-plugin (0.21.0~ubuntu-bionic) ...
Setting up dbus-user-session (1.12.2-1ubuntu1.4) ...
Setting up docker-ce-cli (5:20.10.21~3-0~ubuntu-bionic) ...
Setting up pigz (2.4-1) ...
Setting up docker-ce (5:20.10.21~3-0~ubuntu-bionic) ...
Created symlink /etc/systemd/system/multi-user.target.wants/docker.service → /lib/systemd/system/docker.service.
Created symlink /etc/systemd/system/sockets.target.wants/docker.socket → /lib/systemd/system/docker.socket.
invoke-rc.d: could not determine current runlevel
Setting up docker-ce-rootless-extras (5:20.10.21~3-0~ubuntu-bionic) ...
Processing triggers for man-db (2.8.3-2ubuntu0.1) ...
Processing triggers for ureadahead (0.100.0-21) ...
Processing triggers for systemd (237-3ubuntu10.56) ...
③その後、インストールが完了できたか確認するために、Dockerのバージョンを確認します。
$ docker --version
Docker version 20.10.21, build baeda1f
④次にDockerのサービスを開始させます。
$ sudo service docker start
⑤現在のユーザー(ルート以外でも)でも利用できるように以下に自分のユーザー<your-user>を登録しておきます。
$ sudo usermod -aG docker <your-user>
これで以上終了となります。
まとめ
・WSL2では、Dockerのインストールは可能です。
・Ubuntu18.04にDockerをインストールする際にはリポトジの追加が必須です。
コメント