From 545bdecff26baa19ad8a35df187f59d672482944 Mon Sep 17 00:00:00 2001 From: -LAN- Date: Tue, 4 Aug 2026 13:28:05 +0800 Subject: [PATCH] chore(docker): move optional settings to service envs (#39970) --- AGENTS.md | 1 + docker/.env.example | 5 ----- docker/docker-compose-template.yaml | 2 -- docker/docker-compose.yaml | 2 -- docker/envs/core-services/shared.env.example | 1 - docker/envs/core-services/web.env.example | 1 + web/docker/entrypoint.sh | 2 +- 7 files changed, 3 insertions(+), 11 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 046c2e1dcec..6f5673b316a 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -6,3 +6,4 @@ Dify is an open-source platform for building LLM applications, agentic workflows - Run backend commands through `uv run --project api `. - Backend integration tests are CI-only and are not expected to run locally. +- Keep `docker/.env.example` limited to variables required for a default Docker Compose deployment to start. Put optional and provider-specific settings in the matching `docker/envs/*.env.example` file; `docker/.env` overrides those service-specific env files. diff --git a/docker/.env.example b/docker/.env.example index 49329aadc5b..abf69363047 100644 --- a/docker/.env.example +++ b/docker/.env.example @@ -41,9 +41,6 @@ FILES_ACCESS_TIMEOUT=300 # Remove `collaboration` from COMPOSE_PROFILES to stop the dedicated websocket service. ENABLE_COLLABORATION_MODE=true -# Learn app feature toggle -ENABLE_LEARN_APP=true - # Logging and server workers LOG_LEVEL=INFO LOG_OUTPUT_FORMAT=text @@ -140,9 +137,7 @@ API_SENTRY_TRACES_SAMPLE_RATE=1.0 API_SENTRY_PROFILES_SAMPLE_RATE=1.0 WEB_SENTRY_DSN= AMPLITUDE_API_KEY= -COOKIEYES_SITE_KEY= TEXT_GENERATION_TIMEOUT_MS=60000 -WORKFLOW_GENERATION_TIMEOUT_MS=180000 CSP_WHITELIST= ALLOW_EMBED=false ALLOW_UNSAFE_DATA_SCHEME=false diff --git a/docker/docker-compose-template.yaml b/docker/docker-compose-template.yaml index bb4a3c76efd..856d9d99787 100644 --- a/docker/docker-compose-template.yaml +++ b/docker/docker-compose-template.yaml @@ -398,14 +398,12 @@ services: SERVER_CONSOLE_API_URL: ${SERVER_CONSOLE_API_URL:-http://api:5001} APP_API_URL: ${APP_API_URL:-} AMPLITUDE_API_KEY: ${AMPLITUDE_API_KEY:-} - COOKIEYES_SITE_KEY: ${COOKIEYES_SITE_KEY:-} NEXT_PUBLIC_COOKIE_DOMAIN: ${NEXT_PUBLIC_COOKIE_DOMAIN:-} NEXT_PUBLIC_SOCKET_URL: ${NEXT_PUBLIC_SOCKET_URL:-ws://localhost} SENTRY_DSN: ${WEB_SENTRY_DSN:-} NEXT_TELEMETRY_DISABLED: ${NEXT_TELEMETRY_DISABLED:-0} EXPERIMENTAL_ENABLE_VINEXT: ${EXPERIMENTAL_ENABLE_VINEXT:-false} TEXT_GENERATION_TIMEOUT_MS: ${TEXT_GENERATION_TIMEOUT_MS:-60000} - WORKFLOW_GENERATION_TIMEOUT_MS: ${WORKFLOW_GENERATION_TIMEOUT_MS:-180000} CSP_WHITELIST: ${CSP_WHITELIST:-} ALLOW_EMBED: ${ALLOW_EMBED:-false} ALLOW_UNSAFE_DATA_SCHEME: ${ALLOW_UNSAFE_DATA_SCHEME:-false} diff --git a/docker/docker-compose.yaml b/docker/docker-compose.yaml index 301c03c45ac..475225f3b1f 100644 --- a/docker/docker-compose.yaml +++ b/docker/docker-compose.yaml @@ -404,14 +404,12 @@ services: SERVER_CONSOLE_API_URL: ${SERVER_CONSOLE_API_URL:-http://api:5001} APP_API_URL: ${APP_API_URL:-} AMPLITUDE_API_KEY: ${AMPLITUDE_API_KEY:-} - COOKIEYES_SITE_KEY: ${COOKIEYES_SITE_KEY:-} NEXT_PUBLIC_COOKIE_DOMAIN: ${NEXT_PUBLIC_COOKIE_DOMAIN:-} NEXT_PUBLIC_SOCKET_URL: ${NEXT_PUBLIC_SOCKET_URL:-ws://localhost} SENTRY_DSN: ${WEB_SENTRY_DSN:-} NEXT_TELEMETRY_DISABLED: ${NEXT_TELEMETRY_DISABLED:-0} EXPERIMENTAL_ENABLE_VINEXT: ${EXPERIMENTAL_ENABLE_VINEXT:-false} TEXT_GENERATION_TIMEOUT_MS: ${TEXT_GENERATION_TIMEOUT_MS:-60000} - WORKFLOW_GENERATION_TIMEOUT_MS: ${WORKFLOW_GENERATION_TIMEOUT_MS:-180000} CSP_WHITELIST: ${CSP_WHITELIST:-} ALLOW_EMBED: ${ALLOW_EMBED:-false} ALLOW_UNSAFE_DATA_SCHEME: ${ALLOW_UNSAFE_DATA_SCHEME:-false} diff --git a/docker/envs/core-services/shared.env.example b/docker/envs/core-services/shared.env.example index c0fed86f899..b3abad64778 100644 --- a/docker/envs/core-services/shared.env.example +++ b/docker/envs/core-services/shared.env.example @@ -202,7 +202,6 @@ WORKFLOW_MAX_EXECUTION_TIME=1200 WORKFLOW_CALL_MAX_DEPTH=5 MAX_VARIABLE_SIZE=204800 WORKFLOW_GENERATOR_NODE_BUILDER_MAX_WORKERS=6 -WORKFLOW_GENERATION_TIMEOUT_MS=180000 WORKFLOW_FILE_UPLOAD_LIMIT=10 GRAPH_ENGINE_MIN_WORKERS=3 GRAPH_ENGINE_MAX_WORKERS=10 diff --git a/docker/envs/core-services/web.env.example b/docker/envs/core-services/web.env.example index 5c952f4af4c..862321af84d 100644 --- a/docker/envs/core-services/web.env.example +++ b/docker/envs/core-services/web.env.example @@ -12,6 +12,7 @@ MAX_TOOLS_NUM=10 MAX_PARALLEL_LIMIT=10 MAX_ITERATIONS_NUM=99 TEXT_GENERATION_TIMEOUT_MS=60000 +WORKFLOW_GENERATION_TIMEOUT_MS=180000 ALLOW_INLINE_STYLES=false ALLOW_UNSAFE_DATA_SCHEME=false MAX_TREE_DEPTH=50 diff --git a/web/docker/entrypoint.sh b/web/docker/entrypoint.sh index e600b6cd4de..47e960a4c9f 100755 --- a/web/docker/entrypoint.sh +++ b/web/docker/entrypoint.sh @@ -30,7 +30,7 @@ export NEXT_PUBLIC_AMPLITUDE_API_KEY=${AMPLITUDE_API_KEY} export NEXT_PUBLIC_COOKIEYES_SITE_KEY=${NEXT_PUBLIC_COOKIEYES_SITE_KEY:-${COOKIEYES_SITE_KEY}} export NEXT_PUBLIC_TEXT_GENERATION_TIMEOUT_MS=${TEXT_GENERATION_TIMEOUT_MS} -export NEXT_PUBLIC_WORKFLOW_GENERATION_TIMEOUT_MS=${NEXT_PUBLIC_WORKFLOW_GENERATION_TIMEOUT_MS:-${WORKFLOW_GENERATION_TIMEOUT_MS}} +export NEXT_PUBLIC_WORKFLOW_GENERATION_TIMEOUT_MS=${NEXT_PUBLIC_WORKFLOW_GENERATION_TIMEOUT_MS:-${WORKFLOW_GENERATION_TIMEOUT_MS:-180000}} export NEXT_PUBLIC_CSP_WHITELIST=${CSP_WHITELIST} export NEXT_PUBLIC_ALLOW_EMBED=${ALLOW_EMBED} export NEXT_PUBLIC_ALLOW_INLINE_STYLES=${ALLOW_INLINE_STYLES:-false}