👽

【2024年最新】Windowに「Docker」の環境構築

2024/04/20に公開

✅ Windows10に「WSL2」を導入

⏭WSLと「仮想マシン プラットフォーム」を有効化する

  1. Windowsのスタートボタンから「Windowsシステムツール」→「コントロールパネル」→「プログラム」→「Windowsの機能の有効化または無効化」の順で遷移する

  2. 「Windowsの機能の有効化または無効化」(以下)が表示される。

  3. 「Linux用Windowsサブシステム(WSL)」と「仮想マシン プラットフォーム」と「Windowsハイパーバイザープラットフォーム」にチェックを入れる

  4. 有効化を反映するため、PCの再起動を実施

⏭WSL2用Linuxカーネルをインストールする

  1. ブラウザで「https://aka.ms/wsl2kernel」にアクセスする

  2. 「x64マシン用WSL2 Linuxカーネル更新プログラムパッケージ」をクリックして、インストーラをダウンロードする
    ※CPUが「Intel製」の場合

  3. ダウンロードしたインストーラをダブルクリックして起動させる

  4. インストーラが起動したら、画面の指示に従い「Next」をクリックしてインストールをすすめる

⏭WSL2を既定のバージョンで利用できるようにする

  1. コマンドプロンプトを起動し、以下のコマンド実行
wsl --set-default-version 2

WSL 2 との主な違いについては、https://aka.ms/wsl2 を参照してください
この操作を正しく終了しました。

⏭WSL2用Linuxディストリビューション(Ubuntu)をインストールする

  1. Windowsの「スタートボタン」→「Microsoft Store」と進む

  2. 検索欄に「Ubuntu」と入力して検索を実行する

  3. 検索結果の中から「Ubuntu」を選択して、次の画面で「入手」をクリックする
    ※バージョン指定されていない「Ubuntu」で問題ない

  4. 表示された画面で「開く」をクリックする
    ※インストールが開始されます。

  5. Ubuntuの初期設定画面が表示される

  6. 画面に従い、ユーザとパスワードを入力し、Ubuntuのユーザを作成する。

Enter new UNIX username:ユーザ名は任意で問題ない。(例:ubuntu)
New password:任意のパスワード
Retype new password:同じパスワードをもう一度入力

⏭Windows Terminalで、より簡単にUbuntuを使えるようにする

  1. Windowsの「スタートボタン」→「Microsoft Store」と進む

  2. 検索欄に「Windows Terminal」と入力して検索を実行する

  3. 「Windows Terminal」が見つかったら「入手」をクリックする
    ※インストールが始まります

  4. インストールが完了したら「開く」をクリックする
    ※Windows Terminalでは、以下のように下三角ボタンからUbuntuを起動させて、1つのタブとして利用が可能です。

✅「Docker Desktop for Windows」をインストール

  1. Dockerの公式サイト(https://www.docker.com/)にアクセスし、画面右上部の「Get Started」をクリックする

  2. 遷移先の画面で「Download for Windows」をクリックする。
    ※「Docker Desktop for Windows」のインストーラがダウンロードされます。(基本的に最新バージョンで問題ない)

  3. ダウンロードしたらインストーラをダブルクリックしてインストールをすすめる

  4. インストーラが起動したら、「OK」をクリックし画面の指示に従ってインストールをすすめる。
    ※バージョンによって、チェック項目数/名前が異なる場合がありますが、「Configuration」のチェックはそのままでかまいません。

  5. Windowsからいったんログアウトするように言われるので、いったんログアウトして再度サインインすると完了です。

⏭DockerのWSL2の有効化

  1. Windowsから「Docker Desktop」を起動し、「Start」→「Skip tuotrial」→「Settings(歯車アイコン)」と進め「Use the WSL 2 based engine」にチェックが入っていることを確認します。
    ※デフォルトの設定で、「Use the WSL 2 based engine」にはチェックが入っている。

  2. Dockerの「WSL2の有効化」により、コマンドプロンプト / PowerShellからも、WSL2(Ubuntu)からもDockerが呼び出せるようになります。
    ※試しに両方の環境で、Dockerバージョンを確認すると同じバージョンになっているはず。

docker -v

✅WindowsPC側の設定

⏭Ubuntuディレクトリをネットワークドライブに割り当てておく

  • WSL2は、Windowsのエクスプローラから、「\wsl$」というディレクトリパスでアクセスすることができます。

  • WSL2のディレクトリに、ファイルを配置するときなどに便利などで、ドライブレター(Z:など)を割り当てておくとよい。

  • 「\wsl$」ディレクトリを開くと「Ubuntu」というディレクトリが見えるので、右クリックして「ネットワークドライブの割り当て」から割り当てを設定します。

✅WSL2(Ubuntu)の設定

⏭DNS設定変更

  1. 既存の「/etc/resolv.conf」のコピーを作成
sudo cp /etc/resolv.conf /etc/resolv.conf.new
  1. 現在の「/etc/resolv.conf」のシンボリックリンクを解除
sudo unlink /etc/resolv.conf
  1. コピーした「resolv.conf」を元に戻す
sudo mv /etc/resolv.conf.new /etc/resolv.conf
  1. 「sudo vi /etc/wsl.conf」を実行し、以下をファイルに追記
[network]
generateResolvConf=false
  1. 「sudo vi /etc/resolv.conf」を実行し、「nameserver」を 「8.8.8.8」 に書き換える(GoogleのDNSサーバに変更)

  2. pingコマンドで疎通確認ができればOK

ping google.com

Discussion