api/storage/privkeys
ディレクトリの削除によって発生する可能性があります。このファイルは大規模モデルキーの暗号化に使用されるため、損失は不可逆です。次のコマンドを使用して暗号化キーペアをリセットできます:
CONSOLE_CORS_ALLOW_ORIGINS
WEB_API_CORS_ALLOW_ORIGINS
WebAPP CORSポリシー。デフォルトは*で、すべてのドメインがアクセス可能です。
docker-compose.yml
内の次の構成項目を新しいドメインに更新してください:
CONSOLE_API_URL
: コンソールAPIのバックエンドURL
CONSOLE_WEB_URL
: コンソールWebのフロントエンドURL
SERVICE_API_URL
: サービスAPIのURL
APP_API_URL
: WebApp APIのバックエンドURL
APP_WEB_URL
: WebAppのURL
詳細については、環境変数を参照してください。
flask db upgrade
NOTION_INTEGRATION_TYPE
:この値は(public/internal)に設定する必要があります。Notion の OAuth リダイレクトアドレスは https のみをサポートするため、ローカル展開には Notion の内部統合を使用してください。NOTION_CLIENT_SECRET
: Notion OAuth クライアントシークレット(パブリック統合タイプ用)。NOTION_CLIENT_ID
: OAuth クライアントID(パブリック統合タイプ用)。NOTION_INTERNAL_SECRET
: Notion内部統合シークレット。NOTION_INTEGRATION_TYPE
が internalの場合、この変数を設定してください。tenants
テーブルを直接修正してください。
docker_compose.yaml
内のAPP_WEB_URL
構成項目を見つけて、新しいドメインに変更してください。
dify/docker/volumes
ディレクトリ内のすべてのデータを直接バックアップします。
sudo apt-get update
、次にsudo apt-get install ffmpeg
を入力します。sudo yum install epel-release
sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
sudo yum update
sudo yum install ffmpeg ffmpeg-devel
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install ffmpeg
docker-compose up -d
を実行してください。
VECTOR_STORE=qdrant
docker-compose.yaml
ファイル内の環境変数を移行したいベクトルデータベースに変更し、apiとworkerの両方を修正する必要があります。例:docker-compose.yaml
では、一部のサービスに SSRF_PROXY
と HTTP_PROXY
環境変数が設定されています。これらは全て、ssrf_proxy
コンテナを指しており、SSRF攻撃を防ぐために利用されています。SSRF攻撃について詳しく学びたい方は、こちらの記事をご覧ください。
不必要なリスクを避けるために、SSRF攻撃の可能性があるすべてのサービスにプロキシを設定し、Sandboxのようなサービスがプロキシを通じてのみ外部ネットワークにアクセスできるようにしています。これにより、データとサービスのセキュリティが強化されます。デフォルトでは、このプロキシはローカルリクエストをインターセプトしませんが、squid
構成ファイルを変更することで、プロキシの動作をカスタマイズできます。
docker/volumes/ssrf_proxy/squid.conf
にある squid
構成ファイルを編集することでカスタマイズできます。例えば、ローカルネットワークが 192.168.101.0/24
セグメントにアクセスできる場合でも、192.168.101.19
にある機密データには、ローカル展開のDifyユーザーがアクセスしてほしくない場合、以下のように squid.conf
にルールを追加できます。
dify/docker/nginx/conf.d
を開いて、http://api:5001
を http://172.19.0.7:5001
に、http://web:3000
を http://172.19.0.5:3000
に置き換え、Nginxコンテナを再起動するか、構成を再読み込みします。
なお、これらのIPアドレスは 例 ですので、独自のIPアドレスを取得するためにコマンドを実行する必要があります。また、関連するコンテナを再起動する際には、IPアドレスの再設定が必要になることがあります。
.env
構成ファイルでCSP_WHITELIST
パラメータを見つけて、製品の使用に関連するすべての URL や API リクエスト アドレスなど、許可できるドメイン名を入力します。
この動きは、潜在的な XSS 攻撃を減らすのに役立ちます。 CSP に関する推奨事項の詳細については、コンテンツ セキュリティ ポリシー を参照してください。
docker-compose.yaml
ファイルの nginx
設定を変更することで、実行中のポートを再指定することができます。
clear-free-plan-tenant-expired-logs
コマンドで、日数を指定して古いログを削除できます。たとえば、30日以上前のログを削除するには、次のコマンドを実行します。
618b5d66-a1f5-4b6b-8d12-f171182a1cb2
であることがわかります。--tenant_ids
オプションでテナント ID を指定します。--days
オプションで指定した日数より古いログが削除されます。free_plan_tenant_expired_logs
ディレクトリを削除する
flask clear-free-plan-tenant-expired-logs
コマンドは、実際に削除する前に削除対象のログを free_plan_tenant_expired_logs
ディレクトリにエクスポートします。ストレージ容量を解放したい場合は、このディレクトリも削除することをおすすめします。free_plan_tenant_expired_logs
ディレクトリの削除方法はストレージタイプによって異なります。上記コマンドはデフォルト設定環境での例です。VACUUM
など)も検討できます。clear-orphaned-file-records
コマンドと remove-orphaned-files-on-storage
コマンドを使用して、未使用のファイルを削除できます。
STORAGE_TYPE
が opendal
の場合)のみサポートされています。
OpenDAL 以外のストレージタイプを使用している場合は、未使用のファイルを手動で削除するか、ストレージインタフェイスへの scan
メソッドの実装にご協力ください。--force
(-f
) オプションを利用できます。