【2025年版】VPSにDifyをインストールする全手順|Docker初心者でも安心のセルフホスト完全ガイド
DifyをVPSで動かしたいけど、難しそう
Dockerって何?初心者でも本当にできる?
そんな不安を抱えているあなたに朗報です。この記事では、AIアプリケーション開発プラットフォーム「Dify」を、VPS上にセルフホストする方法を、初心者でも迷わず進められるよう丁寧に解説します。コマンドをコピー&ペーストするだけで、あなただけのDify環境が構築できます。
はじめに:DifyをVPSでセルフホストする魅力とは?

「クラウド版の料金が高い」
「企業の機密データを外部に置きたくない」
「自分好みにカスタマイズしたい」
こんな悩みを抱えていませんか?
Difyは、プログラミング知識がなくてもAIアプリケーションを開発できる革新的なプラットフォームです。チャットボット、文書分析ツール、画像生成アプリなど、さまざまなAIアプリケーションを、ドラッグ&ドロップの直感的な操作で作成できます。
しかし、Difyのクラウド版を使い続けると、月額料金が積み重なって大きな負担になってしまいます。たとえば、チーム向けプランでは月額59ドル(約8,800円)かかります。一方、VPSなら月額1,000円程度から始められ、年間で10万円以上の節約が可能です。
さらに、セルフホストには以下のような魅力があります:
- 完全なデータコントロール:顧客情報や社内文書など、機密性の高いデータも安心して扱える
- 無制限のカスタマイズ:独自機能の追加や、他システムとの連携が自由自在
なぜVPSでDifyを動かすことが最適な選択なのでしょうか?それは、コスト削減とセキュリティ、そして自由度のすべてを両立できるからです。クラウドサービスと自前サーバーの中間に位置するVPSは、初期投資を抑えながら、プロフェッショナルな環境を構築できる理想的な選択肢なのです。
準備編:Difyインストールに必要な環境
Difyを快適に動かすためには、適切なVPSの選定と基本的な知識の準備が欠かせません。ここでは、推奨スペックから具体的なVPSサービスの選び方、そして必要となる前提知識まで、インストール前に知っておくべきことをすべて解説します。
推奨VPSスペックと選び方のポイント
Difyを安定して動作させるには、最低でもメモリ4GB以上が必要です。なぜなら、DifyはDockerコンテナ内で複数のサービス(API、Web UI、データベースなど)を同時に動かすため、メモリ不足になるとシステム全体が不安定になってしまうからです。
項目 | 最低スペック | 推奨スペック | 理由 |
---|---|---|---|
CPU | 1コア | 2コア以上 | AIモデルの処理速度に直結 |
メモリ | 2GB | 4GB以上 | 複数ユーザーでの利用や大規模なデータ処理に必要 |
ストレージ | 20GB | 40GB以上 | Dockerイメージとアプリケーションデータの保存に必要 |
OS | Ubuntu 20.04 | Ubuntu 22.04 LTS | 長期サポートで安定性が高い |
たとえば、個人利用で小規模なチャットボットを作る程度なら最低スペックでも動作しますが、チームで利用したり、複雑なワークフローを構築したりする場合は、推奨スペック以上を選ぶことをおすすめします。具体的には、5人程度のチームで日常的に使用する場合、メモリ4GB・CPU2コアのVPSを選択すれば、レスポンスの遅延やエラーに悩まされることなく快適に利用できます。
おすすめVPSサービス3選(国内・海外)
VPSサービスは数多くありますが、初心者でも扱いやすく、コストパフォーマンスに優れたサービスを厳選しました。
注意:金額は2025/6/22時点の割引なしのものです。時期によってこれより安くなっている場合がありますので公式ページでご確認ください。
1. ConoHa VPS(国内最推奨)
- 月額料金:3,969円〜(メモリ4GB)
- 特徴:日本語サポートが充実、管理画面が使いやすい、初回利用時のクーポンあり
- おすすめ理由:サーバーの再起動やOSの再インストールが管理画面から簡単にでき、初心者に最適
2. XServer VPS(性能・コスパ重視)
- 月額料金:1,700円~(メモリ6G)
- 特徴:高性能CPU & 高速NVMe SSDを全プランで採用、国内シェアNo.1のレンタルサーバー「エックスサーバー」が運営
- おすすめ理由:圧倒的なコストパフォーマンスとサーバー処理速度を両立させたい場合に最適、dify用のテンプレートがある
2. さくらのVPS(安定性重視)
- 月額料金:3,227円〜(メモリ4GB)
- 特徴:20年以上の運用実績、石狩データセンターによる安定稼働
- おすすめ理由:長期利用割引があり、ビジネス利用にも安心
3. DigitalOcean(海外・開発者向け)
- 月額料金:$28〜(約4000円、Premium Droplets, メモリ4GB, CPU2コア)
- 特徴:豊富なドキュメント、開発者コミュニティが活発
- おすすめ理由:初回登録で$200分のクレジットがもらえる(60日間有効)
どのサービスを選ぶべきか迷った場合は、日本語サポートの充実度を重視してください。特に初心者の方は、トラブル時に日本語で相談できる環境があると安心です。その点で、ConoHa VPSやXserver VPS、さくらのVPSといった国内サービスは非常に心強い選択肢となります。
Xserver VPSはDifyver VPSはDify専用のページも用意されており、特に初心者にはお勧めですね!
前提とするOSと必要な知識
この記事では、Ubuntu 22.04 LTSを使用します。LTS(Long Term Support)版は5年間のサポートが保証されており、セキュリティアップデートも定期的に提供されるため、本番環境での利用に適しています。
必要な前提知識は以下のとおりですが、すべてを完璧に理解している必要はありません:
- 基本的なLinuxコマンド:
cd
(ディレクトリ移動)、ls
(ファイル一覧表示)、sudo
(管理者権限での実行) - SSHでのサーバー接続:WindowsならPuTTYやWindows Terminal、MacならTerminal.appを使用
もし「コマンドなんて触ったことがない」という方でも大丈夫です。この記事では、各コマンドの意味を説明しながら進めていきますので、安心してください。たとえば、cd /home
というコマンドは「homeディレクトリに移動する」という意味で、Windowsでフォルダをダブルクリックして開くのと同じ操作です。
実践編:VPSにDifyをインストールする全手順
いよいよDifyのインストール作業に入ります。ここからは、実際のコマンドをコピー&ペーストしながら進められるよう、各ステップを詳細に解説します。作業時間は約30分程度を見込んでください。焦らず、一つずつ確実に進めていきましょう。
Step 1: サーバーの初期設定とパッケージの更新
まず、VPSにSSHで接続します。VPSプロバイダーから提供されたIPアドレス、ユーザー名、パスワードを使用してください。
ssh root@あなたのVPSのIPアドレス
接続できたら、最初にシステムを最新の状態に更新します。これはセキュリティホールを防ぎ、最新の機能を利用するために重要です。
sudo apt update && sudo apt upgrade -y
このコマンドは、利用可能なパッケージのリストを更新(update
)し、インストール済みのパッケージを最新版にアップグレード(upgrade
)します。-y
オプションは、確認メッセージに自動的に「yes」と答えるためのものです。
次に、必要な基本ツールをインストールします:
sudo apt install -y curl git wget software-properties-common
これらのツールは、後の作業で必要になります。たとえば、curl
はインターネットからファイルをダウンロードするため、git
はDifyのソースコードを取得するために使用します。
Step 2: DockerとDocker Composeのインストール
DifyはDockerコンテナとして動作するため、DockerとDocker Composeのインストールが必須です。公式の手順に従って、最新版をインストールしましょう。
まず、Dockerの公式GPGキーを追加します:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
次に、Dockerのリポジトリを追加します:
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をインストールします:
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
インストールが完了したら、Dockerが正常に動作しているか確認します:
sudo docker --version
sudo docker compose version
Docker version 24.0以上とDocker Compose version 2.20以上が表示されれば成功です。
現在のユーザーをdockerグループに追加して、sudo
なしでDockerコマンドを実行できるようにします:
sudo usermod -aG docker $USER
この設定を反映させるため、一度ログアウトして再接続してください:
exit
ssh root@あなたのVPSのIPアドレス
Step 3: Difyのソースコードを取得(git clone)
Difyの公式GitHubリポジトリからソースコードをダウンロードします。まず、作業用のディレクトリに移動します:
cd /opt
次に、Difyのリポジトリをクローンします:
git clone https://github.com/langgenius/dify.git
クローンが完了したら、difyディレクトリに移動します:
cd dify
ここで重要なのは、安定版のリリースタグをチェックアウトすることです。最新の開発版は不安定な場合があるため、本番環境では安定版を使用しましょう:
git checkout v1.4.3
※バージョン番号は執筆時点のものです。最新の安定版はDifyの公式リリースページで確認してください。
Step 4: Difyの起動とコンテナの動作確認
いよいよDifyを起動します。まず、環境設定ファイルをコピーします:
cp .env.example .env
このファイルには、Difyの動作に必要な各種設定が含まれています。デフォルトのままでも動作しますが、本番環境ではセキュリティ強化のため、パスワードやシークレットキーを変更することをおすすめします。
次に、Docker Composeを使ってDifyを起動します:
docker compose up -d
-d
オプションは、バックグラウンドで実行するためのものです。初回起動時は、必要なDockerイメージのダウンロードに5〜10分程度かかる場合があります。
起動状況を確認するには、以下のコマンドを実行します:
docker compose ps
すべてのコンテナが「Up」状態になっていれば、正常に起動しています。もし「Exit」や「Restarting」と表示されている場合は、ログを確認して問題を特定します:
docker compose logs -f
Step 5: WebブラウザからDifyの初期設定を行う
Difyが正常に起動したら、Webブラウザからアクセスして初期設定を行います。ブラウザのアドレスバーに以下のURLを入力してください:
http://あなたのVPSのIPアドレス
初回アクセス時には、管理者アカウントの作成画面が表示されます。以下の情報を入力してください:
- メールアドレス:ログインに使用するメールアドレス
- パスワード:8文字以上で、大文字・小文字・数字を含む強力なパスワード
- 名前:表示名(後から変更可能)
アカウントを作成したら、Difyの管理画面にログインできます。ここから、AIアプリケーションの作成や、APIキーの設定などが行えます。
応用編:本番運用に向けたセキュリティ強化(独自ドメイン・SSL化)
Difyをインターネットに公開する場合、セキュリティの観点から独自ドメインの設定とSSL化は必須です。ここでは、Nginxをリバースプロキシとして使用し、Let’s Encryptで無料のSSL証明書を取得する方法を解説します。
なぜ独自ドメインとSSL化が必要なのか?
「IPアドレスでアクセスできるなら、それでいいのでは?」と思われるかもしれません。しかし、以下の理由から独自ドメインとSSL化は重要です:
まず、セキュリティ面での必要性があります。HTTPSを使用しない場合、ログイン情報やAPIキーなどの重要な情報が暗号化されずにインターネット上を流れてしまいます。これは、カフェの無料Wi-Fiなどを使用している場合、第三者に情報を盗み見られるリスクがあることを意味します。
次に、信頼性の向上です。独自ドメインを使用することで、プロフェッショナルな印象を与えることができます。たとえば、https://dify.yourcompany.com
のようなURLは、IPアドレスよりもはるかに信頼性が高く見えます。
Nginxリバースプロキシの導入と設定
まず、Nginxをインストールします:
sudo apt install -y nginx
次に、Dify用の設定ファイルを作成します:
sudo nano /etc/nginx/sites-available/dify
以下の内容を貼り付けてください(your-domain.comを実際のドメインに置き換えてください):
server {
listen 80;
server_name your-domain.com;
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
設定ファイルを有効化します:
sudo ln -s /etc/nginx/sites-available/dify /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
Let’s Encrypt(Certbot)で無料SSL証明書を取得・自動更新する
Certbotをインストールして、SSL証明書を取得します:
sudo apt install -y certbot python3-certbot-nginx
証明書を取得します(your-domain.comとyour-email@example.comを実際の値に置き換えてください):
sudo certbot --nginx -d your-domain.com --email your-email@example.com --agree-tos --non-interactive
Certbotは自動的にNginxの設定を更新し、HTTPSでのアクセスを可能にします。また、90日ごとの自動更新も設定されるため、証明書の期限切れを心配する必要はありません。
運用・保守編:知っておきたい管理方法
Difyを長期的に安定運用するためには、定期的なアップデートとトラブルシューティングの知識が必要です。ここでは、よくある問題とその解決方法を含め、運用に必要な情報をまとめて提供します。
Difyを最新バージョンにアップデートする方法
Difyは活発に開発が進められており、定期的なアップデートで新機能の追加やバグ修正が行われています。アップデートの手順は以下のとおりです:
まず、現在のデータをバックアップします:
cd /opt/dify
docker compose down
sudo tar -czf /backup/dify-backup-$(date +%Y%m%d).tar.gz .
次に、最新のコードを取得します:
git fetch --all
git checkout v1.4.3 # 最新の安定版タグを指定
最後に、Difyを再起動します:
docker compose pull
docker compose up -d
アップデート後は、必ず動作確認を行ってください。問題が発生した場合は、バックアップから復元することができます。
トラブルシューティング(よくある問題と解決策)
Q: メモリ不足でコンテナが停止する
最も多い問題はメモリ不足です。以下のコマンドでメモリ使用状況を確認できます:
free -h
docker stats
解決策として、スワップ領域を追加します:
sudo fallocate -l 4G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
Q: 502 Bad Gatewayエラーが表示される
このエラーは、Difyのコンテナが正常に動作していない場合に発生します。以下の手順で確認してください:
docker compose ps
docker compose logs api worker
多くの場合、コンテナを再起動することで解決します:
docker compose restart
まとめ:DifyであなただけのAIアプリ開発を始めよう
ここまでの手順を完了すれば、あなたのVPS上でDifyが動作しているはずです。**月額1,000円程度のコストで、クラウド版と同等以上の機能を持つDify環境**を手に入れることができました。
これで、以下のことが可能になります:
- 無制限のAIアプリケーション作成:チャットボット、文書分析ツール、画像生成アプリなど、アイデア次第で様々なアプリを開発できます
- 完全なデータコントロール:顧客データや社内情報を、自分のサーバー内で安全に管理できます
- カスタマイズの自由:必要に応じてDifyのソースコードを改変し、独自の機能を追加することも可能です
次のステップとして、以下のアクションをおすすめします:
1. APIキーの設定
DifyでAI機能を使用するには、OpenAIやAzure OpenAIなどのAPIキーが必要です。管理画面の「設定」→「モデルプロバイダー」から、使用したいAIサービスのAPIキーを登録してください。たとえば、OpenAIの場合は公式サイトでアカウントを作成し、APIキーを取得できます。
2. 最初のアプリケーション作成
「アプリケーション」→「新規作成」から、最初のAIアプリを作ってみましょう。テンプレートも用意されているので、カスタマーサポートボットや文書要約ツールなど、すぐに実用的なアプリケーションを構築できます。
3. バックアップの自動化
本番運用では、定期的なバックアップが重要です。以下のようなcronジョブを設定することで、毎日自動的にバックアップを取ることができます:
sudo crontab -e
以下の行を追加:
0 2 * * * cd /opt/dify && docker compose exec -T db pg_dump -U postgres postgres > /backup/dify-db-$(date +\%Y\%m\%d).sql
4. モニタリングの設定
サーバーの状態を監視するため、無料のモニタリングサービス(UptimeRobotなど)を設定することをおすすめします。これにより、サーバーがダウンした際に即座に通知を受け取ることができます。
5. コミュニティへの参加
Difyには活発なコミュニティがあります。公式DiscordやGitHub Discussionsに参加することで、最新情報を入手したり、他のユーザーと情報交換したりできます。
最後に、この記事で解説した内容は、あくまでも基本的な設定です。Difyの可能性は無限大で、使い方次第で様々な革新的なアプリケーションを生み出すことができます。
たとえば、以下のような活用例があります:
- 社内ナレッジベースの構築:社内文書をアップロードし、従業員が自然言語で質問できるシステム
- 多言語対応カスタマーサポート:複数の言語に対応した自動応答システム
- コンテンツ生成ツール:ブログ記事や商品説明文を自動生成するツール
VPSでDifyをセルフホストすることで、コストを抑えながら、エンタープライズレベルのAI機能を活用できるようになりました。この環境を活かして、ぜひあなただけの革新的なAIアプリケーションを開発してください。
もし途中でつまずいた場合は、この記事を何度でも読み返してください。また、エラーメッセージをそのまま検索すると、多くの場合、解決策が見つかります。技術的な挑戦は、必ずあなたのスキルアップにつながります。
あなたのDifyジャーニーが成功することを心から願っています。Happy Building!