WSL2でDifyを使う

概要

Difyは簡単に生成AIアプリを作成できるGUIのアプリケーションです。
RAGアプリの構築も簡単に行え、人気のOSSです。(graphRAGは使えません)
企業で利用する際にはDockerDesktopを使えない場合があるため、WSL2(Windows Subsystem for Linux)でDockerを動かし、Difyを構築する手順を記載しています。

環境

ホストOS:Windows10 (22H2)
ゲストOS:Ubuntu 24.04

手順

WSLのインストール

Powershellを管理者モードで開いて下記のコマンドを実行し、WSLをインストールします。

wsl --install

LinuxのディストリビューションはデフォルトでUbuntuになります。 オプションで変更も可能です。
実行後、下記のように再起動を求められるのでPCを再起動します。

再起動後、Ubuntuを起動します。

Ubuntuのユーザーを登録する

ユーザー名を入力します。

パスワードを入力し、確認のためもう一度入力します。 注意:パスワードは入力しても表示されません。

上記のような画面になれば、ユーザー登録は成功です。

DockerEngine&DockerComposeのインストール

Ubuntu
公式のドキュメントに従って下記のコマンドを実行し、DockerEngineとDockerComposeをインストールします。

# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL <https://download.docker.com/linux/ubuntu/gpg> -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
echo \\
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] <https://download.docker.com/linux/ubuntu> \\
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \\
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

このスクリプトは、UbuntuにDockerをインストールするための準備作業を行うものです。各コマンドについて詳しく説明します。

1. sudo apt-get update

これは、Aptパッケージマネージャーのリポジトリリストを更新するコマンドです。インストールに先立ち、システムにあるソフトウェアパッケージのリストを最新の状態にします。

2. sudo apt-get install ca-certificates curl

このコマンドは、必要なツールや証明書をインストールします。

  • ca-certificates: SSL接続を信頼できるようにするための証明書を管理するパッケージです。
  • curl: コマンドラインからHTTPリクエストを送るためのツールです。後のステップで外部からファイルをダウンロードする際に使用されます。

3. sudo install -m 0755 -d /etc/apt/keyrings

このコマンドは、GPGキーを保存するディレクトリ(/etc/apt/keyrings)を作成します。-m 0755はディレクトリのアクセス権を指定しており、所有者が読み書き実行でき、他のユーザーが読み実行できる設定です。

4. sudo curl -fsSL <https://download.docker.com/linux/ubuntu/gpg> -o /etc/apt/keyrings/docker.asc

このコマンドは、Dockerの公式GPGキーをダウンロードし、それを/etc/apt/keyrings/docker.ascに保存します。GPGキーは、後でダウンロードするDockerパッケージの信頼性を確認するために使われます。

  • fsSL: エラーを抑え、リダイレクトを追跡し、静かにダウンロードを実行するオプションです。
  • o: 出力先ファイルを指定するオプションです。

5. sudo chmod a+r /etc/apt/keyrings/docker.asc

このコマンドは、ダウンロードしたGPGキーに「全てのユーザーが読み取れる」権限を設定します。これにより、Aptがそのキーを利用してパッケージを検証できるようになります。

6. Add the repository to Apt sources:

次のコマンドは、DockerのリポジトリをUbuntuのAptリポジトリに追加するものです。

bash
コードをコピーする
echo \\
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] <https://download.docker.com/linux/ubuntu> \\
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \\
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

  • echo: 以下の内容を出力します。
    • deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc]: リポジトリのアーキテクチャ(システムに応じた32bitや64bitなど)を自動的に取得し、GPGキーで署名されたリポジトリを指定します。
    • $(. /etc/os-release && echo "$VERSION_CODENAME"): Ubuntuのバージョンコード名(例えば、focaljammy)を取得します。
    • https://download.docker.com/linux/ubuntu stable: Dockerの安定版リポジトリURLです。
  • sudo tee: 権限を持って/etc/apt/sources.list.d/docker.listというファイルに出力内容を追記します。

7. sudo apt-get update

最後にもう一度リポジトリリストを更新します。これにより、先ほど追加したDockerのリポジトリもシステムが認識できるようになります。

Difyのダウンロード

下記のコマンドを実行し、GitHubからdifyをダウンロードします。

git clone https://github.com/langgenius/dify.git

ダウンロードしたフォルダに移動します。

cd dify/docker

下記コマンドを実行し、Difyを実行します。

sudo docker compose up -d

動作確認

ブラウザに「http://localhost」と入力し、Difyが起動できるかを確認します。 成功すると下図のような画面が表示されます。

以後の設定方法は公式サイトにお任せします。

Difyへようこそ | Dify

おわりに


WSL2を使えばDockerDesktopを使わずにDockerが使えて便利ですね。
(Proxyがある場合は別途設定も必要なため、大変ですが、、、)

コメント

タイトルとURLをコピーしました