update templates
This commit is contained in:
@@ -887,6 +887,10 @@ SSRF_HTTP_PORT=3128
|
|||||||
SSRF_COREDUMP_DIR=/var/spool/squid
|
SSRF_COREDUMP_DIR=/var/spool/squid
|
||||||
SSRF_REVERSE_PROXY_PORT=8194
|
SSRF_REVERSE_PROXY_PORT=8194
|
||||||
SSRF_SANDBOX_HOST=sandbox
|
SSRF_SANDBOX_HOST=sandbox
|
||||||
|
SSRF_DEFAULT_TIME_OUT=5
|
||||||
|
SSRF_DEFAULT_CONNECT_TIME_OUT=5
|
||||||
|
SSRF_DEFAULT_READ_TIME_OUT=5
|
||||||
|
SSRF_DEFAULT_WRITE_TIME_OUT=5
|
||||||
|
|
||||||
# ------------------------------
|
# ------------------------------
|
||||||
# docker env var for specifying vector db type at startup
|
# docker env var for specifying vector db type at startup
|
||||||
@@ -932,3 +936,30 @@ MAX_SUBMIT_COUNT=100
|
|||||||
|
|
||||||
# The maximum number of top-k value for RAG.
|
# The maximum number of top-k value for RAG.
|
||||||
TOP_K_MAX_VALUE=10
|
TOP_K_MAX_VALUE=10
|
||||||
|
|
||||||
|
# ------------------------------
|
||||||
|
# Plugin Daemon Configuration
|
||||||
|
# ------------------------------
|
||||||
|
|
||||||
|
DB_PLUGIN_DATABASE=dify_plugin
|
||||||
|
EXPOSE_PLUGIN_DAEMON_PORT=5002
|
||||||
|
PLUGIN_DAEMON_PORT=5002
|
||||||
|
PLUGIN_DAEMON_KEY=lYkiYYT6owG+71oLerGzA7GXCgOT++6ovaezWAjpCjf+Sjc3ZtU+qUEi
|
||||||
|
PLUGIN_DAEMON_URL=http://plugin_daemon:5002
|
||||||
|
PLUGIN_MAX_PACKAGE_SIZE=52428800
|
||||||
|
PLUGIN_PPROF_ENABLED=false
|
||||||
|
|
||||||
|
PLUGIN_DEBUGGING_HOST=0.0.0.0
|
||||||
|
PLUGIN_DEBUGGING_PORT=5003
|
||||||
|
EXPOSE_PLUGIN_DEBUGGING_HOST=localhost
|
||||||
|
EXPOSE_PLUGIN_DEBUGGING_PORT=5003
|
||||||
|
|
||||||
|
PLUGIN_DIFY_INNER_API_KEY=QaHbTe77CtuXmsfyhR7+vRjI/+XbV1AaFy691iy+kGDv2Jvy0/eAh8Y1
|
||||||
|
PLUGIN_DIFY_INNER_API_URL=http://api:5001
|
||||||
|
|
||||||
|
ENDPOINT_URL_TEMPLATE=http://localhost/e/{hook_id}
|
||||||
|
|
||||||
|
MARKETPLACE_ENABLED=true
|
||||||
|
MARKETPLACE_API_URL=https://marketplace.dify.ai
|
||||||
|
|
||||||
|
FORCE_VERIFYING_SIGNATURE=true
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ x-shared-env: &shared-api-worker-env
|
|||||||
services:
|
services:
|
||||||
# API service
|
# API service
|
||||||
api:
|
api:
|
||||||
image: langgenius/dify-api:0.15.2
|
image: langgenius/dify-api:0.15.3
|
||||||
restart: always
|
restart: always
|
||||||
environment:
|
environment:
|
||||||
# Use the shared environment variables.
|
# Use the shared environment variables.
|
||||||
@@ -12,6 +12,8 @@ services:
|
|||||||
SENTRY_DSN: ${API_SENTRY_DSN:-}
|
SENTRY_DSN: ${API_SENTRY_DSN:-}
|
||||||
SENTRY_TRACES_SAMPLE_RATE: ${API_SENTRY_TRACES_SAMPLE_RATE:-1.0}
|
SENTRY_TRACES_SAMPLE_RATE: ${API_SENTRY_TRACES_SAMPLE_RATE:-1.0}
|
||||||
SENTRY_PROFILES_SAMPLE_RATE: ${API_SENTRY_PROFILES_SAMPLE_RATE:-1.0}
|
SENTRY_PROFILES_SAMPLE_RATE: ${API_SENTRY_PROFILES_SAMPLE_RATE:-1.0}
|
||||||
|
PLUGIN_MAX_PACKAGE_SIZE: ${PLUGIN_MAX_PACKAGE_SIZE:-52428800}
|
||||||
|
INNER_API_KEY_FOR_PLUGIN: ${PLUGIN_DIFY_INNER_API_KEY:-QaHbTe77CtuXmsfyhR7+vRjI/+XbV1AaFy691iy+kGDv2Jvy0/eAh8Y1}
|
||||||
depends_on:
|
depends_on:
|
||||||
- db
|
- db
|
||||||
- redis
|
- redis
|
||||||
@@ -25,7 +27,7 @@ services:
|
|||||||
# worker service
|
# worker service
|
||||||
# The Celery worker for processing the queue.
|
# The Celery worker for processing the queue.
|
||||||
worker:
|
worker:
|
||||||
image: langgenius/dify-api:0.15.2
|
image: langgenius/dify-api:0.15.3
|
||||||
restart: always
|
restart: always
|
||||||
environment:
|
environment:
|
||||||
# Use the shared environment variables.
|
# Use the shared environment variables.
|
||||||
@@ -35,6 +37,8 @@ services:
|
|||||||
SENTRY_DSN: ${API_SENTRY_DSN:-}
|
SENTRY_DSN: ${API_SENTRY_DSN:-}
|
||||||
SENTRY_TRACES_SAMPLE_RATE: ${API_SENTRY_TRACES_SAMPLE_RATE:-1.0}
|
SENTRY_TRACES_SAMPLE_RATE: ${API_SENTRY_TRACES_SAMPLE_RATE:-1.0}
|
||||||
SENTRY_PROFILES_SAMPLE_RATE: ${API_SENTRY_PROFILES_SAMPLE_RATE:-1.0}
|
SENTRY_PROFILES_SAMPLE_RATE: ${API_SENTRY_PROFILES_SAMPLE_RATE:-1.0}
|
||||||
|
PLUGIN_MAX_PACKAGE_SIZE: ${PLUGIN_MAX_PACKAGE_SIZE:-52428800}
|
||||||
|
INNER_API_KEY_FOR_PLUGIN: ${PLUGIN_DIFY_INNER_API_KEY:-QaHbTe77CtuXmsfyhR7+vRjI/+XbV1AaFy691iy+kGDv2Jvy0/eAh8Y1}
|
||||||
depends_on:
|
depends_on:
|
||||||
- db
|
- db
|
||||||
- redis
|
- redis
|
||||||
@@ -47,7 +51,7 @@ services:
|
|||||||
|
|
||||||
# Frontend web application.
|
# Frontend web application.
|
||||||
web:
|
web:
|
||||||
image: langgenius/dify-web:0.15.2
|
image: langgenius/dify-web:0.15.3
|
||||||
restart: always
|
restart: always
|
||||||
environment:
|
environment:
|
||||||
CONSOLE_API_URL: ${CONSOLE_API_URL:-}
|
CONSOLE_API_URL: ${CONSOLE_API_URL:-}
|
||||||
@@ -56,8 +60,11 @@ services:
|
|||||||
NEXT_TELEMETRY_DISABLED: ${NEXT_TELEMETRY_DISABLED:-0}
|
NEXT_TELEMETRY_DISABLED: ${NEXT_TELEMETRY_DISABLED:-0}
|
||||||
TEXT_GENERATION_TIMEOUT_MS: ${TEXT_GENERATION_TIMEOUT_MS:-60000}
|
TEXT_GENERATION_TIMEOUT_MS: ${TEXT_GENERATION_TIMEOUT_MS:-60000}
|
||||||
CSP_WHITELIST: ${CSP_WHITELIST:-}
|
CSP_WHITELIST: ${CSP_WHITELIST:-}
|
||||||
|
MARKETPLACE_API_URL: ${MARKETPLACE_API_URL:-https://marketplace.dify.ai}
|
||||||
|
MARKETPLACE_URL: ${MARKETPLACE_URL:-https://marketplace.dify.ai}
|
||||||
TOP_K_MAX_VALUE: ${TOP_K_MAX_VALUE:-}
|
TOP_K_MAX_VALUE: ${TOP_K_MAX_VALUE:-}
|
||||||
INDEXING_MAX_SEGMENTATION_TOKENS_LENGTH: ${INDEXING_MAX_SEGMENTATION_TOKENS_LENGTH:-}
|
INDEXING_MAX_SEGMENTATION_TOKENS_LENGTH: ${INDEXING_MAX_SEGMENTATION_TOKENS_LENGTH:-}
|
||||||
|
PM2_INSTANCES: ${PM2_INSTANCES:-2}
|
||||||
|
|
||||||
# The postgres database.
|
# The postgres database.
|
||||||
db:
|
db:
|
||||||
@@ -81,6 +88,8 @@ services:
|
|||||||
interval: 1s
|
interval: 1s
|
||||||
timeout: 3s
|
timeout: 3s
|
||||||
retries: 30
|
retries: 30
|
||||||
|
ports:
|
||||||
|
- '${EXPOSE_DB_PORT:-5432}:5432'
|
||||||
|
|
||||||
# The redis cache.
|
# The redis cache.
|
||||||
redis:
|
redis:
|
||||||
@@ -118,6 +127,30 @@ services:
|
|||||||
networks:
|
networks:
|
||||||
- ssrf_proxy_network
|
- ssrf_proxy_network
|
||||||
|
|
||||||
|
# plugin daemon
|
||||||
|
plugin_daemon:
|
||||||
|
image: langgenius/dify-plugin-daemon:0.0.2-local
|
||||||
|
restart: always
|
||||||
|
environment:
|
||||||
|
# Use the shared environment variables.
|
||||||
|
<<: *shared-api-worker-env
|
||||||
|
DB_DATABASE: ${DB_PLUGIN_DATABASE:-dify_plugin}
|
||||||
|
SERVER_PORT: ${PLUGIN_DAEMON_PORT:-5002}
|
||||||
|
SERVER_KEY: ${PLUGIN_DAEMON_KEY:-lYkiYYT6owG+71oLerGzA7GXCgOT++6ovaezWAjpCjf+Sjc3ZtU+qUEi}
|
||||||
|
MAX_PLUGIN_PACKAGE_SIZE: ${PLUGIN_MAX_PACKAGE_SIZE:-52428800}
|
||||||
|
PPROF_ENABLED: ${PLUGIN_PPROF_ENABLED:-false}
|
||||||
|
DIFY_INNER_API_URL: ${PLUGIN_DIFY_INNER_API_URL:-http://api:5001}
|
||||||
|
DIFY_INNER_API_KEY: ${INNER_API_KEY_FOR_PLUGIN:-QaHbTe77CtuXmsfyhR7+vRjI/+XbV1AaFy691iy+kGDv2Jvy0/eAh8Y1}
|
||||||
|
PLUGIN_REMOTE_INSTALLING_HOST: ${PLUGIN_REMOTE_INSTALL_HOST:-0.0.0.0}
|
||||||
|
PLUGIN_REMOTE_INSTALLING_PORT: ${PLUGIN_REMOTE_INSTALL_PORT:-5003}
|
||||||
|
PLUGIN_WORKING_PATH: ${PLUGIN_WORKING_PATH:-/app/storage/cwd}
|
||||||
|
FORCE_VERIFYING_SIGNATURE: ${FORCE_VERIFYING_SIGNATURE:-true}
|
||||||
|
ports:
|
||||||
|
- "${EXPOSE_PLUGIN_DEBUGGING_PORT:-5003}:${PLUGIN_DEBUGGING_PORT:-5003}"
|
||||||
|
volumes:
|
||||||
|
- ./volumes/plugin_daemon:/app/storage
|
||||||
|
|
||||||
|
|
||||||
# ssrf_proxy server
|
# ssrf_proxy server
|
||||||
# for more information, please refer to
|
# for more information, please refer to
|
||||||
# https://docs.dify.ai/learn-more/faq/install-faq#id-18.-why-is-ssrf_proxy-needed
|
# https://docs.dify.ai/learn-more/faq/install-faq#id-18.-why-is-ssrf_proxy-needed
|
||||||
@@ -199,16 +232,6 @@ services:
|
|||||||
- '${EXPOSE_NGINX_PORT:-80}:${NGINX_PORT:-80}'
|
- '${EXPOSE_NGINX_PORT:-80}:${NGINX_PORT:-80}'
|
||||||
- '${EXPOSE_NGINX_SSL_PORT:-443}:${NGINX_SSL_PORT:-443}'
|
- '${EXPOSE_NGINX_SSL_PORT:-443}:${NGINX_SSL_PORT:-443}'
|
||||||
|
|
||||||
# The TiDB vector store.
|
|
||||||
# For production use, please refer to https://github.com/pingcap/tidb-docker-compose
|
|
||||||
tidb:
|
|
||||||
image: pingcap/tidb:v8.4.0
|
|
||||||
profiles:
|
|
||||||
- tidb
|
|
||||||
command:
|
|
||||||
- --store=unistore
|
|
||||||
restart: always
|
|
||||||
|
|
||||||
# The Weaviate vector store.
|
# The Weaviate vector store.
|
||||||
weaviate:
|
weaviate:
|
||||||
image: semitechnologies/weaviate:1.19.0
|
image: semitechnologies/weaviate:1.19.0
|
||||||
|
|||||||
@@ -64,6 +64,36 @@ services:
|
|||||||
networks:
|
networks:
|
||||||
- ssrf_proxy_network
|
- ssrf_proxy_network
|
||||||
|
|
||||||
|
# plugin daemon
|
||||||
|
plugin_daemon:
|
||||||
|
image: langgenius/dify-plugin-daemon:0.0.2-local
|
||||||
|
restart: always
|
||||||
|
environment:
|
||||||
|
# Use the shared environment variables.
|
||||||
|
DB_HOST: ${DB_HOST:-db}
|
||||||
|
DB_PORT: ${DB_PORT:-5432}
|
||||||
|
DB_USERNAME: ${DB_USER:-postgres}
|
||||||
|
DB_PASSWORD: ${DB_PASSWORD:-difyai123456}
|
||||||
|
DB_DATABASE: ${DB_PLUGIN_DATABASE:-dify_plugin}
|
||||||
|
REDIS_HOST: ${REDIS_HOST:-redis}
|
||||||
|
REDIS_PORT: ${REDIS_PORT:-6379}
|
||||||
|
REDIS_PASSWORD: ${REDIS_PASSWORD:-difyai123456}
|
||||||
|
SERVER_PORT: ${PLUGIN_DAEMON_PORT:-5002}
|
||||||
|
SERVER_KEY: ${PLUGIN_DAEMON_KEY:-lYkiYYT6owG+71oLerGzA7GXCgOT++6ovaezWAjpCjf+Sjc3ZtU+qUEi}
|
||||||
|
MAX_PLUGIN_PACKAGE_SIZE: ${PLUGIN_MAX_PACKAGE_SIZE:-52428800}
|
||||||
|
PPROF_ENABLED: ${PLUGIN_PPROF_ENABLED:-false}
|
||||||
|
DIFY_INNER_API_URL: ${PLUGIN_DIFY_INNER_API_URL:-http://host.docker.internal:5001}
|
||||||
|
DIFY_INNER_API_KEY: ${PLUGIN_DIFY_INNER_API_KEY:-QaHbTe77CtuXmsfyhR7+vRjI/+XbV1AaFy691iy+kGDv2Jvy0/eAh8Y1}
|
||||||
|
PLUGIN_REMOTE_INSTALLING_HOST: ${PLUGIN_DEBUGGING_HOST:-0.0.0.0}
|
||||||
|
PLUGIN_REMOTE_INSTALLING_PORT: ${PLUGIN_DEBUGGING_PORT:-5003}
|
||||||
|
PLUGIN_WORKING_PATH: ${PLUGIN_WORKING_PATH:-/app/storage/cwd}
|
||||||
|
FORCE_VERIFYING_SIGNATURE: ${FORCE_VERIFYING_SIGNATURE:-true}
|
||||||
|
ports:
|
||||||
|
- "${EXPOSE_PLUGIN_DAEMON_PORT:-5002}:${PLUGIN_DAEMON_PORT:-5002}"
|
||||||
|
- "${EXPOSE_PLUGIN_DEBUGGING_PORT:-5003}:${PLUGIN_DEBUGGING_PORT:-5003}"
|
||||||
|
volumes:
|
||||||
|
- ./volumes/plugin_daemon:/app/storage
|
||||||
|
|
||||||
# ssrf_proxy server
|
# ssrf_proxy server
|
||||||
# for more information, please refer to
|
# for more information, please refer to
|
||||||
# https://docs.dify.ai/learn-more/faq/install-faq#id-18.-why-is-ssrf_proxy-needed
|
# https://docs.dify.ai/learn-more/faq/install-faq#id-18.-why-is-ssrf_proxy-needed
|
||||||
|
|||||||
@@ -377,6 +377,10 @@ x-shared-env: &shared-api-worker-env
|
|||||||
SSRF_COREDUMP_DIR: ${SSRF_COREDUMP_DIR:-/var/spool/squid}
|
SSRF_COREDUMP_DIR: ${SSRF_COREDUMP_DIR:-/var/spool/squid}
|
||||||
SSRF_REVERSE_PROXY_PORT: ${SSRF_REVERSE_PROXY_PORT:-8194}
|
SSRF_REVERSE_PROXY_PORT: ${SSRF_REVERSE_PROXY_PORT:-8194}
|
||||||
SSRF_SANDBOX_HOST: ${SSRF_SANDBOX_HOST:-sandbox}
|
SSRF_SANDBOX_HOST: ${SSRF_SANDBOX_HOST:-sandbox}
|
||||||
|
SSRF_DEFAULT_TIME_OUT: ${SSRF_DEFAULT_TIME_OUT:-5}
|
||||||
|
SSRF_DEFAULT_CONNECT_TIME_OUT: ${SSRF_DEFAULT_CONNECT_TIME_OUT:-5}
|
||||||
|
SSRF_DEFAULT_READ_TIME_OUT: ${SSRF_DEFAULT_READ_TIME_OUT:-5}
|
||||||
|
SSRF_DEFAULT_WRITE_TIME_OUT: ${SSRF_DEFAULT_WRITE_TIME_OUT:-5}
|
||||||
EXPOSE_NGINX_PORT: ${EXPOSE_NGINX_PORT:-80}
|
EXPOSE_NGINX_PORT: ${EXPOSE_NGINX_PORT:-80}
|
||||||
EXPOSE_NGINX_SSL_PORT: ${EXPOSE_NGINX_SSL_PORT:-443}
|
EXPOSE_NGINX_SSL_PORT: ${EXPOSE_NGINX_SSL_PORT:-443}
|
||||||
POSITION_TOOL_PINS: ${POSITION_TOOL_PINS:-}
|
POSITION_TOOL_PINS: ${POSITION_TOOL_PINS:-}
|
||||||
@@ -389,11 +393,28 @@ x-shared-env: &shared-api-worker-env
|
|||||||
CREATE_TIDB_SERVICE_JOB_ENABLED: ${CREATE_TIDB_SERVICE_JOB_ENABLED:-false}
|
CREATE_TIDB_SERVICE_JOB_ENABLED: ${CREATE_TIDB_SERVICE_JOB_ENABLED:-false}
|
||||||
MAX_SUBMIT_COUNT: ${MAX_SUBMIT_COUNT:-100}
|
MAX_SUBMIT_COUNT: ${MAX_SUBMIT_COUNT:-100}
|
||||||
TOP_K_MAX_VALUE: ${TOP_K_MAX_VALUE:-10}
|
TOP_K_MAX_VALUE: ${TOP_K_MAX_VALUE:-10}
|
||||||
|
DB_PLUGIN_DATABASE: ${DB_PLUGIN_DATABASE:-dify_plugin}
|
||||||
|
EXPOSE_PLUGIN_DAEMON_PORT: ${EXPOSE_PLUGIN_DAEMON_PORT:-5002}
|
||||||
|
PLUGIN_DAEMON_PORT: ${PLUGIN_DAEMON_PORT:-5002}
|
||||||
|
PLUGIN_DAEMON_KEY: ${PLUGIN_DAEMON_KEY:-lYkiYYT6owG+71oLerGzA7GXCgOT++6ovaezWAjpCjf+Sjc3ZtU+qUEi}
|
||||||
|
PLUGIN_DAEMON_URL: ${PLUGIN_DAEMON_URL:-http://plugin_daemon:5002}
|
||||||
|
PLUGIN_MAX_PACKAGE_SIZE: ${PLUGIN_MAX_PACKAGE_SIZE:-52428800}
|
||||||
|
PLUGIN_PPROF_ENABLED: ${PLUGIN_PPROF_ENABLED:-false}
|
||||||
|
PLUGIN_DEBUGGING_HOST: ${PLUGIN_DEBUGGING_HOST:-0.0.0.0}
|
||||||
|
PLUGIN_DEBUGGING_PORT: ${PLUGIN_DEBUGGING_PORT:-5003}
|
||||||
|
EXPOSE_PLUGIN_DEBUGGING_HOST: ${EXPOSE_PLUGIN_DEBUGGING_HOST:-localhost}
|
||||||
|
EXPOSE_PLUGIN_DEBUGGING_PORT: ${EXPOSE_PLUGIN_DEBUGGING_PORT:-5003}
|
||||||
|
PLUGIN_DIFY_INNER_API_KEY: ${PLUGIN_DIFY_INNER_API_KEY:-QaHbTe77CtuXmsfyhR7+vRjI/+XbV1AaFy691iy+kGDv2Jvy0/eAh8Y1}
|
||||||
|
PLUGIN_DIFY_INNER_API_URL: ${PLUGIN_DIFY_INNER_API_URL:-http://api:5001}
|
||||||
|
ENDPOINT_URL_TEMPLATE: ${ENDPOINT_URL_TEMPLATE:-http://localhost/e/{hook_id}}
|
||||||
|
MARKETPLACE_ENABLED: ${MARKETPLACE_ENABLED:-true}
|
||||||
|
MARKETPLACE_API_URL: ${MARKETPLACE_API_URL:-https://marketplace.dify.ai}
|
||||||
|
FORCE_VERIFYING_SIGNATURE: ${FORCE_VERIFYING_SIGNATURE:-true}
|
||||||
|
|
||||||
services:
|
services:
|
||||||
# API service
|
# API service
|
||||||
api:
|
api:
|
||||||
image: langgenius/dify-api:0.15.2
|
image: langgenius/dify-api:0.15.3
|
||||||
restart: always
|
restart: always
|
||||||
environment:
|
environment:
|
||||||
# Use the shared environment variables.
|
# Use the shared environment variables.
|
||||||
@@ -403,6 +424,8 @@ services:
|
|||||||
SENTRY_DSN: ${API_SENTRY_DSN:-}
|
SENTRY_DSN: ${API_SENTRY_DSN:-}
|
||||||
SENTRY_TRACES_SAMPLE_RATE: ${API_SENTRY_TRACES_SAMPLE_RATE:-1.0}
|
SENTRY_TRACES_SAMPLE_RATE: ${API_SENTRY_TRACES_SAMPLE_RATE:-1.0}
|
||||||
SENTRY_PROFILES_SAMPLE_RATE: ${API_SENTRY_PROFILES_SAMPLE_RATE:-1.0}
|
SENTRY_PROFILES_SAMPLE_RATE: ${API_SENTRY_PROFILES_SAMPLE_RATE:-1.0}
|
||||||
|
PLUGIN_MAX_PACKAGE_SIZE: ${PLUGIN_MAX_PACKAGE_SIZE:-52428800}
|
||||||
|
INNER_API_KEY_FOR_PLUGIN: ${PLUGIN_DIFY_INNER_API_KEY:-QaHbTe77CtuXmsfyhR7+vRjI/+XbV1AaFy691iy+kGDv2Jvy0/eAh8Y1}
|
||||||
depends_on:
|
depends_on:
|
||||||
- db
|
- db
|
||||||
- redis
|
- redis
|
||||||
@@ -416,7 +439,7 @@ services:
|
|||||||
# worker service
|
# worker service
|
||||||
# The Celery worker for processing the queue.
|
# The Celery worker for processing the queue.
|
||||||
worker:
|
worker:
|
||||||
image: langgenius/dify-api:0.15.2
|
image: langgenius/dify-api:0.15.3
|
||||||
restart: always
|
restart: always
|
||||||
environment:
|
environment:
|
||||||
# Use the shared environment variables.
|
# Use the shared environment variables.
|
||||||
@@ -426,6 +449,8 @@ services:
|
|||||||
SENTRY_DSN: ${API_SENTRY_DSN:-}
|
SENTRY_DSN: ${API_SENTRY_DSN:-}
|
||||||
SENTRY_TRACES_SAMPLE_RATE: ${API_SENTRY_TRACES_SAMPLE_RATE:-1.0}
|
SENTRY_TRACES_SAMPLE_RATE: ${API_SENTRY_TRACES_SAMPLE_RATE:-1.0}
|
||||||
SENTRY_PROFILES_SAMPLE_RATE: ${API_SENTRY_PROFILES_SAMPLE_RATE:-1.0}
|
SENTRY_PROFILES_SAMPLE_RATE: ${API_SENTRY_PROFILES_SAMPLE_RATE:-1.0}
|
||||||
|
PLUGIN_MAX_PACKAGE_SIZE: ${PLUGIN_MAX_PACKAGE_SIZE:-52428800}
|
||||||
|
INNER_API_KEY_FOR_PLUGIN: ${PLUGIN_DIFY_INNER_API_KEY:-QaHbTe77CtuXmsfyhR7+vRjI/+XbV1AaFy691iy+kGDv2Jvy0/eAh8Y1}
|
||||||
depends_on:
|
depends_on:
|
||||||
- db
|
- db
|
||||||
- redis
|
- redis
|
||||||
@@ -438,7 +463,7 @@ services:
|
|||||||
|
|
||||||
# Frontend web application.
|
# Frontend web application.
|
||||||
web:
|
web:
|
||||||
image: langgenius/dify-web:0.15.2
|
image: langgenius/dify-web:0.15.3
|
||||||
restart: always
|
restart: always
|
||||||
environment:
|
environment:
|
||||||
CONSOLE_API_URL: ${CONSOLE_API_URL:-}
|
CONSOLE_API_URL: ${CONSOLE_API_URL:-}
|
||||||
@@ -447,8 +472,11 @@ services:
|
|||||||
NEXT_TELEMETRY_DISABLED: ${NEXT_TELEMETRY_DISABLED:-0}
|
NEXT_TELEMETRY_DISABLED: ${NEXT_TELEMETRY_DISABLED:-0}
|
||||||
TEXT_GENERATION_TIMEOUT_MS: ${TEXT_GENERATION_TIMEOUT_MS:-60000}
|
TEXT_GENERATION_TIMEOUT_MS: ${TEXT_GENERATION_TIMEOUT_MS:-60000}
|
||||||
CSP_WHITELIST: ${CSP_WHITELIST:-}
|
CSP_WHITELIST: ${CSP_WHITELIST:-}
|
||||||
|
MARKETPLACE_API_URL: ${MARKETPLACE_API_URL:-https://marketplace.dify.ai}
|
||||||
|
MARKETPLACE_URL: ${MARKETPLACE_URL:-https://marketplace.dify.ai}
|
||||||
TOP_K_MAX_VALUE: ${TOP_K_MAX_VALUE:-}
|
TOP_K_MAX_VALUE: ${TOP_K_MAX_VALUE:-}
|
||||||
INDEXING_MAX_SEGMENTATION_TOKENS_LENGTH: ${INDEXING_MAX_SEGMENTATION_TOKENS_LENGTH:-}
|
INDEXING_MAX_SEGMENTATION_TOKENS_LENGTH: ${INDEXING_MAX_SEGMENTATION_TOKENS_LENGTH:-}
|
||||||
|
PM2_INSTANCES: ${PM2_INSTANCES:-2}
|
||||||
|
|
||||||
# The postgres database.
|
# The postgres database.
|
||||||
db:
|
db:
|
||||||
@@ -509,6 +537,27 @@ services:
|
|||||||
networks:
|
networks:
|
||||||
- ssrf_proxy_network
|
- ssrf_proxy_network
|
||||||
|
|
||||||
|
# plugin daemon
|
||||||
|
plugin_daemon:
|
||||||
|
image: langgenius/dify-plugin-daemon:0.0.2-local
|
||||||
|
restart: always
|
||||||
|
environment:
|
||||||
|
# Use the shared environment variables.
|
||||||
|
<<: *shared-api-worker-env
|
||||||
|
DB_DATABASE: ${DB_PLUGIN_DATABASE:-dify_plugin}
|
||||||
|
SERVER_PORT: ${PLUGIN_DAEMON_PORT:-5002}
|
||||||
|
SERVER_KEY: ${PLUGIN_DAEMON_KEY:-lYkiYYT6owG+71oLerGzA7GXCgOT++6ovaezWAjpCjf+Sjc3ZtU+qUEi}
|
||||||
|
MAX_PLUGIN_PACKAGE_SIZE: ${PLUGIN_MAX_PACKAGE_SIZE:-52428800}
|
||||||
|
PPROF_ENABLED: ${PLUGIN_PPROF_ENABLED:-false}
|
||||||
|
DIFY_INNER_API_URL: ${PLUGIN_DIFY_INNER_API_URL:-http://api:5001}
|
||||||
|
DIFY_INNER_API_KEY: ${INNER_API_KEY_FOR_PLUGIN:-QaHbTe77CtuXmsfyhR7+vRjI/+XbV1AaFy691iy+kGDv2Jvy0/eAh8Y1}
|
||||||
|
PLUGIN_REMOTE_INSTALLING_HOST: ${PLUGIN_REMOTE_INSTALL_HOST:-0.0.0.0}
|
||||||
|
PLUGIN_REMOTE_INSTALLING_PORT: ${PLUGIN_REMOTE_INSTALL_PORT:-5003}
|
||||||
|
PLUGIN_WORKING_PATH: ${PLUGIN_WORKING_PATH:-/app/storage/cwd}
|
||||||
|
FORCE_VERIFYING_SIGNATURE: ${FORCE_VERIFYING_SIGNATURE:-true}
|
||||||
|
volumes:
|
||||||
|
- ./volumes/plugin_daemon:/app/storage
|
||||||
|
|
||||||
# ssrf_proxy server
|
# ssrf_proxy server
|
||||||
# for more information, please refer to
|
# for more information, please refer to
|
||||||
# https://docs.dify.ai/learn-more/faq/install-faq#id-18.-why-is-ssrf_proxy-needed
|
# https://docs.dify.ai/learn-more/faq/install-faq#id-18.-why-is-ssrf_proxy-needed
|
||||||
@@ -601,16 +650,6 @@ services:
|
|||||||
- api
|
- api
|
||||||
- web
|
- web
|
||||||
|
|
||||||
# The TiDB vector store.
|
|
||||||
# For production use, please refer to https://github.com/pingcap/tidb-docker-compose
|
|
||||||
tidb:
|
|
||||||
image: pingcap/tidb:v8.4.0
|
|
||||||
profiles:
|
|
||||||
- tidb
|
|
||||||
command:
|
|
||||||
- --store=unistore
|
|
||||||
restart: always
|
|
||||||
|
|
||||||
# The Weaviate vector store.
|
# The Weaviate vector store.
|
||||||
weaviate:
|
weaviate:
|
||||||
image: semitechnologies/weaviate:1.19.0
|
image: semitechnologies/weaviate:1.19.0
|
||||||
|
|||||||
@@ -87,3 +87,31 @@ EXPOSE_REDIS_PORT=6379
|
|||||||
EXPOSE_SANDBOX_PORT=8194
|
EXPOSE_SANDBOX_PORT=8194
|
||||||
EXPOSE_SSRF_PROXY_PORT=3128
|
EXPOSE_SSRF_PROXY_PORT=3128
|
||||||
EXPOSE_WEAVIATE_PORT=8080
|
EXPOSE_WEAVIATE_PORT=8080
|
||||||
|
|
||||||
|
# ------------------------------
|
||||||
|
# Plugin Daemon Configuration
|
||||||
|
# ------------------------------
|
||||||
|
|
||||||
|
DB_PLUGIN_DATABASE=dify_plugin
|
||||||
|
EXPOSE_PLUGIN_DAEMON_PORT=5002
|
||||||
|
PLUGIN_DAEMON_PORT=5002
|
||||||
|
PLUGIN_DAEMON_KEY=lYkiYYT6owG+71oLerGzA7GXCgOT++6ovaezWAjpCjf+Sjc3ZtU+qUEi
|
||||||
|
PLUGIN_DAEMON_URL=http://host.docker.internal:5002
|
||||||
|
PLUGIN_MAX_PACKAGE_SIZE=52428800
|
||||||
|
PLUGIN_PPROF_ENABLED=false
|
||||||
|
PLUGIN_WORKING_PATH=/app/storage/cwd
|
||||||
|
|
||||||
|
ENDPOINT_URL_TEMPLATE=http://localhost:5002/e/{hook_id}
|
||||||
|
|
||||||
|
PLUGIN_DEBUGGING_PORT=5003
|
||||||
|
PLUGIN_DEBUGGING_HOST=0.0.0.0
|
||||||
|
EXPOSE_PLUGIN_DEBUGGING_HOST=localhost
|
||||||
|
EXPOSE_PLUGIN_DEBUGGING_PORT=5003
|
||||||
|
|
||||||
|
PLUGIN_DIFY_INNER_API_KEY=QaHbTe77CtuXmsfyhR7+vRjI/+XbV1AaFy691iy+kGDv2Jvy0/eAh8Y1
|
||||||
|
PLUGIN_DIFY_INNER_API_URL=http://api:5001
|
||||||
|
|
||||||
|
MARKETPLACE_ENABLED=true
|
||||||
|
MARKETPLACE_API_URL=https://marketplace.dify.ai
|
||||||
|
|
||||||
|
FORCE_VERIFYING_SIGNATURE=true
|
||||||
@@ -24,6 +24,17 @@ server {
|
|||||||
include proxy.conf;
|
include proxy.conf;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
location /explore {
|
||||||
|
proxy_pass http://web:3000;
|
||||||
|
include proxy.conf;
|
||||||
|
}
|
||||||
|
|
||||||
|
location /e {
|
||||||
|
proxy_pass http://plugin_daemon:5002;
|
||||||
|
proxy_set_header Dify-Hook-Url $scheme://$host$request_uri;
|
||||||
|
include proxy.conf;
|
||||||
|
}
|
||||||
|
|
||||||
location / {
|
location / {
|
||||||
proxy_pass http://web:3000;
|
proxy_pass http://web:3000;
|
||||||
include proxy.conf;
|
include proxy.conf;
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
proxy_set_header Host $host;
|
proxy_set_header Host $host;
|
||||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
proxy_set_header X-Forwarded-Proto $scheme;
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
proxy_set_header X-Forwarded-Port $server_port;
|
||||||
proxy_http_version 1.1;
|
proxy_http_version 1.1;
|
||||||
proxy_set_header Connection "";
|
proxy_set_header Connection "";
|
||||||
proxy_buffering off;
|
proxy_buffering off;
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ acl localnet src 192.168.0.0/16 # RFC 1918 local private network (LAN)
|
|||||||
acl localnet src fc00::/7 # RFC 4193 local private network range
|
acl localnet src fc00::/7 # RFC 4193 local private network range
|
||||||
acl localnet src fe80::/10 # RFC 4291 link-local (directly plugged) machines
|
acl localnet src fe80::/10 # RFC 4291 link-local (directly plugged) machines
|
||||||
acl SSL_ports port 443
|
acl SSL_ports port 443
|
||||||
|
# acl SSL_ports port 1025-65535 # Enable the configuration to resolve this issue: https://github.com/langgenius/dify/issues/12792
|
||||||
acl Safe_ports port 80 # http
|
acl Safe_ports port 80 # http
|
||||||
acl Safe_ports port 21 # ftp
|
acl Safe_ports port 21 # ftp
|
||||||
acl Safe_ports port 443 # https
|
acl Safe_ports port 443 # https
|
||||||
|
|||||||
@@ -0,0 +1,4 @@
|
|||||||
|
# PD Configuration File reference:
|
||||||
|
# https://docs.pingcap.com/tidb/stable/pd-configuration-file#pd-configuration-file
|
||||||
|
[replication]
|
||||||
|
max-replicas = 1
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
# TiFlash tiflash-learner.toml Configuration File reference:
|
||||||
|
# https://docs.pingcap.com/tidb/stable/tiflash-configuration#configure-the-tiflash-learnertoml-file
|
||||||
|
|
||||||
|
log-file = "/logs/tiflash_tikv.log"
|
||||||
|
|
||||||
|
[server]
|
||||||
|
engine-addr = "tiflash:4030"
|
||||||
|
addr = "0.0.0.0:20280"
|
||||||
|
advertise-addr = "tiflash:20280"
|
||||||
|
status-addr = "tiflash:20292"
|
||||||
|
|
||||||
|
[storage]
|
||||||
|
data-dir = "/data/flash"
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
# TiFlash tiflash.toml Configuration File reference:
|
||||||
|
# https://docs.pingcap.com/tidb/stable/tiflash-configuration#configure-the-tiflashtoml-file
|
||||||
|
|
||||||
|
listen_host = "0.0.0.0"
|
||||||
|
path = "/data"
|
||||||
|
|
||||||
|
[flash]
|
||||||
|
tidb_status_addr = "tidb:10080"
|
||||||
|
service_addr = "tiflash:4030"
|
||||||
|
|
||||||
|
[flash.proxy]
|
||||||
|
config = "/tiflash-learner.toml"
|
||||||
|
|
||||||
|
[logger]
|
||||||
|
errorlog = "/logs/tiflash_error.log"
|
||||||
|
log = "/logs/tiflash.log"
|
||||||
|
|
||||||
|
[raft]
|
||||||
|
pd_addr = "pd0:2379"
|
||||||
@@ -0,0 +1,62 @@
|
|||||||
|
services:
|
||||||
|
pd0:
|
||||||
|
image: pingcap/pd:v8.5.1
|
||||||
|
# ports:
|
||||||
|
# - "2379"
|
||||||
|
volumes:
|
||||||
|
- ./config/pd.toml:/pd.toml:ro
|
||||||
|
- ./volumes/data:/data
|
||||||
|
- ./volumes/logs:/logs
|
||||||
|
command:
|
||||||
|
- --name=pd0
|
||||||
|
- --client-urls=http://0.0.0.0:2379
|
||||||
|
- --peer-urls=http://0.0.0.0:2380
|
||||||
|
- --advertise-client-urls=http://pd0:2379
|
||||||
|
- --advertise-peer-urls=http://pd0:2380
|
||||||
|
- --initial-cluster=pd0=http://pd0:2380
|
||||||
|
- --data-dir=/data/pd
|
||||||
|
- --config=/pd.toml
|
||||||
|
- --log-file=/logs/pd.log
|
||||||
|
restart: on-failure
|
||||||
|
tikv:
|
||||||
|
image: pingcap/tikv:v8.5.1
|
||||||
|
volumes:
|
||||||
|
- ./volumes/data:/data
|
||||||
|
- ./volumes/logs:/logs
|
||||||
|
command:
|
||||||
|
- --addr=0.0.0.0:20160
|
||||||
|
- --advertise-addr=tikv:20160
|
||||||
|
- --status-addr=tikv:20180
|
||||||
|
- --data-dir=/data/tikv
|
||||||
|
- --pd=pd0:2379
|
||||||
|
- --log-file=/logs/tikv.log
|
||||||
|
depends_on:
|
||||||
|
- "pd0"
|
||||||
|
restart: on-failure
|
||||||
|
tidb:
|
||||||
|
image: pingcap/tidb:v8.5.1
|
||||||
|
# ports:
|
||||||
|
# - "4000:4000"
|
||||||
|
volumes:
|
||||||
|
- ./volumes/logs:/logs
|
||||||
|
command:
|
||||||
|
- --advertise-address=tidb
|
||||||
|
- --store=tikv
|
||||||
|
- --path=pd0:2379
|
||||||
|
- --log-file=/logs/tidb.log
|
||||||
|
depends_on:
|
||||||
|
- "tikv"
|
||||||
|
restart: on-failure
|
||||||
|
tiflash:
|
||||||
|
image: pingcap/tiflash:v8.5.1
|
||||||
|
volumes:
|
||||||
|
- ./config/tiflash.toml:/tiflash.toml:ro
|
||||||
|
- ./config/tiflash-learner.toml:/tiflash-learner.toml:ro
|
||||||
|
- ./volumes/data:/data
|
||||||
|
- ./volumes/logs:/logs
|
||||||
|
command:
|
||||||
|
- --config=/tiflash.toml
|
||||||
|
depends_on:
|
||||||
|
- "tikv"
|
||||||
|
- "tidb"
|
||||||
|
restart: on-failure
|
||||||
@@ -296,7 +296,7 @@ services:
|
|||||||
PG_META_DB_PASSWORD: ${POSTGRES_PASSWORD}
|
PG_META_DB_PASSWORD: ${POSTGRES_PASSWORD}
|
||||||
|
|
||||||
functions:
|
functions:
|
||||||
image: supabase/edge-runtime:v1.66.5
|
image: supabase/edge-runtime:v1.67.0
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
volumes:
|
volumes:
|
||||||
- ./volumes/functions:/home/deno/functions:Z
|
- ./volumes/functions:/home/deno/functions:Z
|
||||||
|
|||||||
@@ -4,13 +4,13 @@ TAG=latest
|
|||||||
#PG_DATABASE_PASSWORD=replace_me_with_a_strong_password_without_special_characters
|
#PG_DATABASE_PASSWORD=replace_me_with_a_strong_password_without_special_characters
|
||||||
#PG_DATABASE_HOST=db
|
#PG_DATABASE_HOST=db
|
||||||
#PG_DATABASE_PORT=5432
|
#PG_DATABASE_PORT=5432
|
||||||
#REDIS_URL=redis://redis:6379
|
REDIS_URL=redis://redis:6379
|
||||||
|
|
||||||
SERVER_URL=http://localhost:3000
|
SERVER_URL=https://$(PRIMARY_DOMAIN)
|
||||||
SIGN_IN_PREFILLED=false
|
SIGN_IN_PREFILLED=false
|
||||||
|
|
||||||
# Use openssl rand -base64 32 for each secret
|
# Use openssl rand -base64 32 for each secret
|
||||||
# APP_SECRET=replace_me_with_a_random_string
|
APP_SECRET=replace_me_with_a_random_string
|
||||||
|
|
||||||
STORAGE_TYPE=local
|
STORAGE_TYPE=local
|
||||||
|
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ services:
|
|||||||
- server-local-data:/app/packages/twenty-server/${STORAGE_LOCAL_PATH:-.local-storage}
|
- server-local-data:/app/packages/twenty-server/${STORAGE_LOCAL_PATH:-.local-storage}
|
||||||
- docker-data:/app/docker-data
|
- docker-data:/app/docker-data
|
||||||
environment:
|
environment:
|
||||||
PORT: 3000
|
NODE_PORT: 3000
|
||||||
PG_DATABASE_URL: postgres://${PG_DATABASE_USER:-postgres}:${PG_DATABASE_PASSWORD:-postgres}@${PG_DATABASE_HOST:-db}:${PG_DATABASE_PORT:-5432}/default
|
PG_DATABASE_URL: postgres://${PG_DATABASE_USER:-postgres}:${PG_DATABASE_PASSWORD:-postgres}@${PG_DATABASE_HOST:-db}:${PG_DATABASE_PORT:-5432}/default
|
||||||
SERVER_URL: ${SERVER_URL}
|
SERVER_URL: ${SERVER_URL}
|
||||||
REDIS_URL: ${REDIS_URL:-redis://redis:6379}
|
REDIS_URL: ${REDIS_URL:-redis://redis:6379}
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ spec:
|
|||||||
image: twentycrm/twenty:latest
|
image: twentycrm/twenty:latest
|
||||||
imagePullPolicy: Always
|
imagePullPolicy: Always
|
||||||
env:
|
env:
|
||||||
- name: PORT
|
- name: NODE_PORT
|
||||||
value: 3000
|
value: 3000
|
||||||
- name: SERVER_URL
|
- name: SERVER_URL
|
||||||
value: "https://crm.example.com:443"
|
value: "https://crm.example.com:443"
|
||||||
@@ -45,8 +45,6 @@ spec:
|
|||||||
value: "false"
|
value: "false"
|
||||||
- name: STORAGE_TYPE
|
- name: STORAGE_TYPE
|
||||||
value: "local"
|
value: "local"
|
||||||
- name: "MESSAGE_QUEUE_TYPE"
|
|
||||||
value: "bull-mq"
|
|
||||||
- name: "ACCESS_TOKEN_EXPIRES_IN"
|
- name: "ACCESS_TOKEN_EXPIRES_IN"
|
||||||
value: "7d"
|
value: "7d"
|
||||||
- name: "LOGIN_TOKEN_EXPIRES_IN"
|
- name: "LOGIN_TOKEN_EXPIRES_IN"
|
||||||
|
|||||||
@@ -34,10 +34,6 @@ spec:
|
|||||||
value: "false" # it already runs on the server
|
value: "false" # it already runs on the server
|
||||||
- name: STORAGE_TYPE
|
- name: STORAGE_TYPE
|
||||||
value: "local"
|
value: "local"
|
||||||
- name: "MESSAGE_QUEUE_TYPE"
|
|
||||||
value: "bull-mq"
|
|
||||||
- name: "CACHE_STORAGE_TYPE"
|
|
||||||
value: "redis"
|
|
||||||
- name: "REDIS_URL"
|
- name: "REDIS_URL"
|
||||||
value: "redis://twentycrm-redis.twentycrm.svc.cluster.local:6379"
|
value: "redis://twentycrm-redis.twentycrm.svc.cluster.local:6379"
|
||||||
- name: APP_SECRET
|
- name: APP_SECRET
|
||||||
|
|||||||
@@ -38,13 +38,9 @@ resource "kubernetes_deployment" "twentycrm_server" {
|
|||||||
tty = true
|
tty = true
|
||||||
|
|
||||||
env {
|
env {
|
||||||
name = "PORT"
|
name = "NODE_PORT"
|
||||||
value = "3000"
|
value = "3000"
|
||||||
}
|
}
|
||||||
# env {
|
|
||||||
# name = "DEBUG_MODE"
|
|
||||||
# value = false
|
|
||||||
# }
|
|
||||||
|
|
||||||
env {
|
env {
|
||||||
name = "SERVER_URL"
|
name = "SERVER_URL"
|
||||||
@@ -68,10 +64,6 @@ resource "kubernetes_deployment" "twentycrm_server" {
|
|||||||
name = "STORAGE_TYPE"
|
name = "STORAGE_TYPE"
|
||||||
value = "local"
|
value = "local"
|
||||||
}
|
}
|
||||||
env {
|
|
||||||
name = "MESSAGE_QUEUE_TYPE"
|
|
||||||
value = "bull-mq"
|
|
||||||
}
|
|
||||||
env {
|
env {
|
||||||
name = "ACCESS_TOKEN_EXPIRES_IN"
|
name = "ACCESS_TOKEN_EXPIRES_IN"
|
||||||
value = "7d"
|
value = "7d"
|
||||||
|
|||||||
@@ -48,11 +48,6 @@ resource "kubernetes_deployment" "twentycrm_worker" {
|
|||||||
value = "postgres://twenty:${var.twentycrm_pgdb_admin_password}@${kubernetes_service.twentycrm_db.metadata.0.name}.${kubernetes_namespace.twentycrm.metadata.0.name}.svc.cluster.local/default"
|
value = "postgres://twenty:${var.twentycrm_pgdb_admin_password}@${kubernetes_service.twentycrm_db.metadata.0.name}.${kubernetes_namespace.twentycrm.metadata.0.name}.svc.cluster.local/default"
|
||||||
}
|
}
|
||||||
|
|
||||||
env {
|
|
||||||
name = "CACHE_STORAGE_TYPE"
|
|
||||||
value = "redis"
|
|
||||||
}
|
|
||||||
|
|
||||||
env {
|
env {
|
||||||
name = "REDIS_URL"
|
name = "REDIS_URL"
|
||||||
value = "redis://${kubernetes_service.twentycrm_redis.metadata.0.name}.${kubernetes_namespace.twentycrm.metadata.0.name}.svc.cluster.local:6379"
|
value = "redis://${kubernetes_service.twentycrm_redis.metadata.0.name}.${kubernetes_namespace.twentycrm.metadata.0.name}.svc.cluster.local:6379"
|
||||||
@@ -67,10 +62,6 @@ resource "kubernetes_deployment" "twentycrm_worker" {
|
|||||||
name = "STORAGE_TYPE"
|
name = "STORAGE_TYPE"
|
||||||
value = "local"
|
value = "local"
|
||||||
}
|
}
|
||||||
env {
|
|
||||||
name = "MESSAGE_QUEUE_TYPE"
|
|
||||||
value = "bull-mq"
|
|
||||||
}
|
|
||||||
|
|
||||||
env {
|
env {
|
||||||
name = "APP_SECRET"
|
name = "APP_SECRET"
|
||||||
|
|||||||
@@ -5,3 +5,21 @@ await utils.copyDir("./repo/packages/twenty-docker", "./code");
|
|||||||
|
|
||||||
await utils.removeContainerNames("./code/docker-compose.yml");
|
await utils.removeContainerNames("./code/docker-compose.yml");
|
||||||
await utils.removePorts("./code/docker-compose.yml");
|
await utils.removePorts("./code/docker-compose.yml");
|
||||||
|
|
||||||
|
await utils.searchReplace(
|
||||||
|
"./code/.env.example",
|
||||||
|
"#REDIS_URL=redis://redis:6379",
|
||||||
|
"REDIS_URL=redis://redis:6379"
|
||||||
|
);
|
||||||
|
|
||||||
|
await utils.searchReplace(
|
||||||
|
"./code/.env.example",
|
||||||
|
"SERVER_URL=http://localhost:3000",
|
||||||
|
"SERVER_URL=https://$(PRIMARY_DOMAIN)"
|
||||||
|
);
|
||||||
|
|
||||||
|
await utils.searchReplace(
|
||||||
|
"./code/.env.example",
|
||||||
|
"# APP_SECRET=replace_me_with_a_random_string",
|
||||||
|
"APP_SECRET=replace_me_with_a_random_string"
|
||||||
|
);
|
||||||
|
|||||||
@@ -72,6 +72,15 @@ async function renameFile(src, dest) {
|
|||||||
await execa("mv", [src, dest]);
|
await execa("mv", [src, dest]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async function searchReplace(path, search, replace) {
|
||||||
|
console.log(`Searching and replacing ${search} with ${replace} in ${path}`);
|
||||||
|
|
||||||
|
const file = await fs.promises.readFile(path, "utf8");
|
||||||
|
const newFile = file.replaceAll(search, replace);
|
||||||
|
|
||||||
|
await fs.promises.writeFile(path, newFile);
|
||||||
|
}
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
cloneOrPullRepo,
|
cloneOrPullRepo,
|
||||||
removeContainerNames,
|
removeContainerNames,
|
||||||
@@ -79,4 +88,5 @@ export default {
|
|||||||
copyDir,
|
copyDir,
|
||||||
downloadFile,
|
downloadFile,
|
||||||
renameFile,
|
renameFile,
|
||||||
|
searchReplace,
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user