> ## Documentation index
> Fetch the complete documentation index at: https://dify-docs.docs7.io/llms.txt
> Ask it with GET https://dify-docs.docs7.io/ask?q=<keywords or question>. Short keywords rank best.
> Use these to discover all available pages before exploring further.

# Docker Compose で Dify をデプロイする

> このドキュメントは AI によって自動翻訳されています。不正確な部分がある場合は、[英語版](/en/self-host/deploy/quick-start/docker-compose) を参照してください。

<Tip>
    一般的なデプロイの問題は [FAQ](/ja/self-host/deploy/quick-start/faqs) を参照してください。
</Tip>

## デプロイ前の準備

マシンが以下の最小システム要件を満たしているか確認してください。

### ハードウェア

- CPU >= 2 コア
- RAM >= 4 GiB

### ソフトウェア

| オペレーティングシステム | 必要なソフトウェア | 備考 |
| :--- | :--- | :--- |
| macOS 10.14 以降 | Docker Desktop / Docker Compose 2.24.0+ | 2 vCPU 以上、8 GiB 以上のメモリを割り当てます。<br></br><br></br>[Mac 用 Docker Desktop のインストール](https://docs.docker.com/desktop/mac/install/) を参照してください。 |
| Linux | Docker 19.03+ / Docker Compose 2.24.0+ | 手順は以下を参照してください。<br></br><br></br>[Docker Engine のインストール](https://docs.docker.com/engine/install/) / [Docker Compose のインストール](https://docs.docker.com/compose/install/) |
| Windows (WSL 2) | Docker Desktop / Docker Compose 2.24.0+ | ソースコードとデータは Linux ファイルシステムに保存。<br></br><br></br>[Windows 用 Docker Desktop のインストール](https://docs.docker.com/desktop/windows/install/#wsl-2-backend) を参照してください。 |

## デプロイと起動

<Steps>
  <Step title="Dify をクローン">
    Dify のソースコードをローカルマシンにクローンします。

    ```bash
    git clone --branch "$(curl -s https://api.github.com/repos/langgenius/dify/releases/latest | jq -r .tag_name)" https://github.com/langgenius/dify.git
    ```

    <Info>
      このコマンドには `git`、`curl`、`jq` が必要です。`command not found` エラーが表示された場合は、不足しているツールをインストールしてから再実行してください。

      クローンが `fatal: Remote branch null not found in upstream origin` エラーで失敗したときは、[Dify releases](https://github.com/langgenius/dify/releases) で最新バージョンを確認し、バージョンを明示して再実行してください：

      ```bash
      git clone --branch <version> https://github.com/langgenius/dify.git
      ```

      詳細は [クローン時の「Remote branch null not found」エラー](/ja/self-host/deploy/quick-start/faqs#クローン時の「remote-branch-null-not-found」エラー) を参照してください。

    </Info>
  </Step>
  <Step title="Dify を起動">

    1. Dify ソースコード内の `docker` ディレクトリに移動します：

        ```bash
        cd dify/docker
        ```

    2. 必須の環境設定ファイルをコピーします：

        ```bash
        cp .env.example .env
        ```

        後でデプロイをカスタマイズする場合は [カスタマイズ](#カスタマイズ) を参照してください。

    3. コンテナを起動します：
        <Note>
          Dify は Docker Compose 2.24.0 以降を必要とします。`docker compose version` を実行してバージョンを確認してください。
        </Note>

        ```bash
        docker compose up -d
        ```

        以下のコンテナが起動します：

        - 7 つのコアサービス：`api`、`api_websocket`、`worker`、`worker_beat`、`web`、`plugin_daemon`、`agent_backend`
        - 8 つの依存コンポーネント：`weaviate`、`db_postgres`、`redis`、`nginx`、`ssrf_proxy`、`agent_ssrf_proxy`、`sandbox`、`local_sandbox`
        - 1 つの一時タスク：`init_permissions`（ストレージのファイル権限を設定し、完了後に終了します）

    4. すべてのコンテナが正常に動作しているか確認します：

        ```bash
        docker compose ps
        ```

        各コンテナのステータスが `Up` または `healthy` になっていれば正常です。`init_permissions` が `Exited` になっているのは想定どおりです。
  </Step>
</Steps>

## アクセス

1. 管理者初期化ページを開いて、管理者アカウントを設定します：

    ```bash
    # ローカル環境
    http://localhost/install

    # サーバー環境
    http://your_server_ip/install
    ```

2. 管理者アカウントの設定が完了したら、以下のアドレスで Dify にログインします：

    ```bash
    # ローカル環境
    http://localhost  

    # サーバー環境
    http://your_server_ip
    ```

## カスタマイズ

デプロイをカスタマイズするには、関連するファイルの環境変数を編集してから Dify を再起動します。

<Steps>
  <Step title="環境変数を編集">

    - **必須の起動値** は `docker/.env` にあります（デプロイ時に `docker/.env.example` からコピーして作成したファイル）。直接編集します。

    - **オプションまたはプロバイダー固有の設定** は `docker/envs/` にテンプレートとして用意されています。デフォルト値を上書きするには、対応するテンプレートをコピーし（`.example` 拡張子を外す）、コピーを編集します。

      例：

        ```bash
        cd dify/docker
        cp envs/vectorstores/milvus.env.example envs/vectorstores/milvus.env
        ```

    `docker/.env` の値は、`docker/envs/*.env` ファイルの値より優先されます。

    <Tip>
      すべての変数の説明は [環境変数](/ja/self-host/deploy/configuration/environments) を参照してください。
    </Tip>

  </Step>
  <Step title="Dify を再起動">

    ```bash
    docker compose down
    docker compose up -d
    ```

  </Step>
</Steps>

## アップグレード

アップグレード手順はリリースによって異なる場合があります。[Releases](https://github.com/langgenius/dify/releases) ページで提供されている対象バージョンのアップグレードガイドを参照してください。

<Note>
  アップグレード後、各 `.env.example` を対応する `.env` と比較し、新規または変更された変数を確認してください。
  
  `docker-compose.yaml` をカスタマイズしている場合は、古いファイルを使い続けるのではなく、新しいリリースのファイルにカスタマイズを適用し直してください。リリースによっては、Dify の動作に必要なサービスが追加されることがあります。
</Note>
