Windows で WSL2 (Ubuntu) + docker compose 環境構築

WSL2 の Ubuntu に docker 及び docker compose 環境を構築するための手順です。
WindowsにDocker for Desktop をインストールするのではなく、WSL2 の Ubuntu に Docker 及び Docker Compose をインストールします。

最新記事は こちら

目次

WSL2 ( Ubuntu ) インストール

※参考:WSL のインストール

WSL2 (Linux 用 Windows サブシステム)をインストール

管理者として PowerShell コンソールを開き、次のコマンドを実行します。

このコマンドを実行すると、必要なオプション コンポーネントの有効化、最新 Linux カーネルのダウンロード、WSL 2 の既定としての設定、および Linux ディストリビューション ( Ubuntu ) のインストールが実行されます。

$ wsl --install

上記コマンドだけで、以前必要だった Linux 用 Windows サブシステムオプション機能を有効にしたり、仮想マシンの機能を有効にしたりも一緒に行われます。

Ubuntu のユーザ名とパスワードを設定する

[スタート] メニューから Ubuntu を開き、ユーザ名とパスワードを設定します。
Ubuntuを開くだけでユーザ名とパスワードを作成するための入力が求められます。
※このユーザアカウントは、Windowsのアカウントは無関係になります。

※以降、基本的にUbuntuでの操作です。

Ubuntu のパッケージの更新とアップグレード

以下コマンドを実行し、パッケージの更新とアップグレードを行います。

$ sudo apt update -y && sudo apt upgrade -y

Ubuntu へ Docker Engine インストール

参考:Docker Engine インストール

リポジトリを利用したインストールを行います。

Docker リポジトリのセットアップ

apt パッケージインデックス更新

$ sudo apt-get update
$ sudo apt-get install \
    ca-certificates \
    curl \
    gnupg \
    lsb-release

Docker の公式 GPG 鍵を追加

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
$ ls -l /usr/share/keyrings/docker-archive-keyring.gpg

安定版(stable)リポジトリをセットアップ

$ echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Docker Engine インストール

$ sudo apt-get update
$ sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin

root ユーザ以外で Docker を管理

$ sudo groupadd docker
$ sudo usermod -aG docker $USER

一旦ログアウトしてから以下でグループが追加されたことを確認します。
→「999(docker)」が追加されていればOK

$ id

システムブート時の Docker 起動設定

現状を確認します。

$ systemctl list-unit-files --type=service | egrep 'docker|containerd'

システムブート時に起動するには以下を実行します。

$ sudo systemctl enable docker.service
$ sudo systemctl enable containerd.service

無効にするには、以下を実行します。

$ sudo systemctl disable docker.service
$ sudo systemctl disable containerd.service

Docker を起動

dockerの状態を確認し、not runningの場合は起動します。

$ service docker status
$ sudo service docker start

Ubuntu へ Docker Compose インストール

※参考:Install Docker Compose

インストールディレクトリを作成して、インストールします。

$ sudo mkdir -p /usr/local/lib/docker/cli-plugins
$ sudo curl -SL https://github.com/docker/compose/releases/download/v2.4.1/docker-compose-linux-x86_64 -o /usr/local/lib/docker/cli-plugins/docker-compose

実行権限を付与して、シンボリックリンクを作成します。

$ sudo chmod +x /usr/local/lib/docker/cli-plugins/docker-compose
$ sudo ln -s /usr/local/lib/docker/cli-plugins/docker-compose /usr/bin/docker-compose

Docker Compose がインストールできたことを確認します。
→バージョンが表示されればOK

$ docker-compose --version

Windows Terminal Preview インストール&セットアップ

Windows Terminal Preview インストール

任意ですが、個人的にはWindows Terminalを使った方が便利だと思います。
以下からWindows Terminalをインストールします。

→Windows Terminal Preview インストールページ

Windows Terminal Preview

Windows Terminal 初期設定

特にやらなくても問題ないと思いますが、初期設定するなら以下を参照して実施します。
デフォルトで Ubuntuのタブが開くようにしておくと便利かもしれません。
参考)
https://docs.microsoft.com/ja-JP/windows/terminal/install
https://docs.microsoft.com/ja-JP/windows/terminal/tutorials/custom-prompt-setup

Ubuntu へ Git インストール ※ついでに

必要に応じてGitのインストールを行います。
(タイトルと関係ありませんがどうせ必要になるのでついでに)

Git インストール

$ sudo apt update
$ sudo apt-get install git

Git 構成ファイルのセットアップ

$ git config --global user.name "Your Name"
$ git config --global user.email "youremail@domain.com"

以上で、WSL2でのdocker-compose環境構築手順完了になります。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

文系の大学を卒業後、未経験でWebエンジニアとしての道を歩む。
プログラミングスクールで基礎を学び、Webエンジニアとして就職。
今ではプロジェクト経験15年以上のベテランエンジニアに。
 
今までの経験を活かし、プログラミング関連の情報や生活に役立つ情報を配信していきます。

コメント

コメントする

目次