Windows 11 の環境で「WSL2 ＋ Ubuntu 24.04 ＋ Docker」をセットアップしてみる（＋ Dify も）

## はじめに
今回、Windows 11 の環境で「WSL2 ＋ Ubuntu24.04 ＋ Docker」をセットアップしてみたので、その流れのメモを記事にしてみました。

それと合わせて、以下のように Dify もインストールするところまで試してみています。

https://x.com/youtoy/status/1882125474828259330

一部、ざっくりな記載の部分があるため、そのあたりは以下の他記事もあわせてご覧ください。

### 参照した記事
今回の内容を進める中で、参照した記事を掲載します。

1. [WSL のインストール | Microsoft Learn](https://learn.microsoft.com/ja-jp/windows/wsl/install)
1. [WSL2+Ubuntu24.04+Docker＋GPUでつくる機械学習環境](https://zenn.dev/yumizz/articles/627d4e4821c636)
1. [Windows11 WSL2 Ubuntu の超基本的な使い方【誰でもできるよ】｜hiro20180901](https://note.com/hiro20180901/n/neb8fdd56f961)
1. [Windows+WSL2+Docker+VSCODEで使い捨て開発環境を構築するまで～前編～ 1. Qiita](https://qiita.com/kamiryo/items/9c9b5b14ee50388d8a9e)
1. [Windows 11でWSLを使ってDockerとDocker Composeをセットアップする方法 - Qiita](https://qiita.com/c8h9no2/items/63207d8343566a489bdd)

## セットアップを行う
それでは、セットアップを進めていきます。

### WSL を使えるようにする
まずは `wsl --install` を実行して、WSL を使える状態を作ります。
（自分はこれをやる前に wslコマンドを入力してみたところで以下の案内が出て、管理者権限での実行の許可をしたら、インストールが進んでいきました）

![2025-01-23_01-20-38.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/50868/99ae13fd-4b89-9a01-b0c4-6bde7eb88545.jpeg)

### 有効なディストリビューションの確認
上記が完了したら、以下のコマンドで有効なディストリビューションの一覧を確認してみます。
（コマンドは `wsl --list --online` という略さない形もあります）

```powershell
wsl -l -o
```

そうすると、自分が試した際は以下の一覧が表示されました。

![2025-01-23_01-26-09.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/50868/1439fb84-2e3d-4fef-ae6a-3784d4edae5b.jpeg)

これらの中から選ぶものについて、今回は上で掲載していた参照先と同じように「Ubuntu24.04」を使うことにします。

### Ubuntu のインストール・ユーザー作成
ここからは、主に利用したコマンドをざっくりと書いていきます。

以下は Ubuntu のインストールです。

```powershell
wsl --install Ubuntu-24.04
```

インストール後、初回起動時は新規ユーザーの作成の操作を求められました。
そこで、ユーザー名とパスワードを設定します。

そして適宜、設定など必要があれば行い、ここから Docker を使えるようにしていきます。

### Docker を使えるようにする
[公式ドキュメント](https://docs.docker.jp/linux/step_one.html)にも記載されている以下のコマンドを実行して、セットアップを進めました。

```zsh
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
```

過去の記事を見ていると、この後に Docker Compose のインストールの手順が書かれていたりしました。しかし冒頭に掲載していた参照記事の情報などによると、記事執筆時点では既に Docker Compose もインストール済みになっているとのことです。

実際に、以下のように `docker -v` と `docker compose version` をそれぞれ実行すると、どちらもバージョン情報が表示されました。

![2025-01-23_02-23-44.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/50868/68ab2933-623c-c50f-0da4-aa52826f5f22.jpeg)

![2025-01-23_02-44-43.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/50868/b571ab78-8232-2be8-e551-f47d4e7cb3d2.jpeg)

また、dockerコマンドをユーザーの権限で実行できるように、以下のコマンドを実行しました。

```zsh
sudo usermod -a -G docker $USER
```

## Dify のセットアップ
さらに、今回はお試し的な感じで Dify のインストールも試してみました。

[公式の「Docker Compose デプロイ」の部分](https://docs.dify.ai/ja-jp/getting-started/install-self-hosted/docker-compose)に書かれた手順で、インストールを進めました。

特に難しい部分はなく、それを進めた結果、以下のように Dify に必要な一式が動作している状態にできました。

![2025-01-23_02-51-33.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/50868/de9afc10-707f-0150-01c6-52f6f566c948.jpeg)

そして、ブラウザから PC内に構築された Dify の環境にアクセスすると、以下のように Dify の初期設定を進められる状態にできました。

![2025-01-23_02-51-09.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/50868/b8cfc08f-8e8f-f3f2-b29e-0a1afbabf40b.jpeg)

![2025-01-23_02-53-13.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/50868/e74d3b92-62f3-bf15-70e2-6a13974cdc43.jpeg)