Windows11ProでWSL2 Ubuntu + Dockerの開発環境を構築してみる

10年ほどMacユーザーをしているGLUGのA.Tです。

 

今回、パソコンのリプレイスにともない、10年ぶりにWindowsを手にしました。

UIがあちこち変わっていて。。。設定変更の 度に手が止まってしまいます。。。

 

弊社のWebシステム開発では、個々の開発作業は、開発環境をそれぞれのパソコンにDockerDesktopを利用して、皆同じ設定の開発環境を構築して開発作業を進めています。

 

パソコンがWindowsへ変わったということは・・・

 

MacでDockerDesktopを利用して構築していた開発環境をWindowsに移築しなければならない。

 

ということで、より快適な開発環境構築を目指して、

 

  1. Windows11ProにWSL2 Ubuntuをインストールする
  2. WSL2 UbuntuにDocker CEインストール

 

を試してみます。

ポイントは、DockerDesktopではないよ!というところ。

インストールするのはDocker CEです。

 

まずはWindows11ProにWSL2 Ubuntuのインストールを行います。

 

WSLはWindows Subsystem for Linuxの略で、Windows上でLinux環境を実行することができます。

 

Windows11ProにWSL2 Ubuntuをインストールする

1. [スタート] > [設定] > [アプリ] > [オプション機能] > [Windowsのその他の機能]を開き、「LinuxWindowsサブシステム」が無効になっていることを確認します。

 

2. WindowsPowerShellを管理者として実行します。

 

3. 以下のコマンドを実行して、WSLのインストールを完了させます。

$wsl --install

4. インストールが完了したら、パソコンを再起動します。

5. 再起動後、ユーザー名とパスワードを設定してWSL2のインストールは完了です。

 

WSL2 Ubuntuにdockerをインストールする

公式ドキュメントを参考に進めます。

※2022年10月時点の情報のため、ご覧になっている時点では操作方法等が変更になっている可能性があります。

 

Ubuntu 用 Docker CE の入手 — Docker-docs-ja 19.03 ドキュメント

なお、以下のコマンドはすべて、WSL2 Ubuntu上で実行します。

 

1. aptパッケージ・インデックスを更新する

$ sudo apt-get update

2. aptがHTTPSを通してリポジトリを使えるようにパッケージをインストールする

$ sudo apt-get install apt-transport-https ca-certificates curl software-properties-common

3. Docker の公式 GPG 鍵を追加します

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

4. 利用しているCPUに適したリポジトリをセットアップする。私のパソコンのCPUはIntelなので、amd64を利用します。

$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

5. 改めてaptパッケージ・インデックスを更新します

$ sudo apt-get update

6. docker ceをインストールし、サービスを起動します

$ sudo apt-get install docker-ce
$ sudo service docker start

7. さらに弊社ではdocker composeを利用しているので、そちらもUbuntuにインストールします

$ curl -L https://github.com/docker/compose/releases/download/{{ v2.6.1 }}/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

8. ログインしているユーザーをdockerグループへ追加して、書き込み権限を付与します。

$ sudo gpasswd -a $(whoami) docker

9. Ubuntuをログアウト・再ログインします。

 

10. docker ceが正しくインストールされていることを確認するために、hello-worldイメージを実行します

$ docker run hello-world

 

【おまけ】

毎日Ubuntuを起動して、docker startして・・・というのが面倒な人向けに、こんな内容のbatファイルを作成して、スタートアップメニューに登録しておくと、パソコンを起動時に勝手にUbuntuとDockerが起動されるので、素早く作業を開始できます。

 

@echo off

wsl -d Ubuntu -u root -- service docker start

 

以上で、「Windows11ProでWSL2 Ubuntu + Dockerの環境を構築してみる」の完了です。