|
|
|
@ -5,9 +5,6 @@
|
|
|
|
# ==================================================================
|
|
|
|
# ==================================================================
|
|
|
|
|
|
|
|
|
|
|
|
x-shared-env: &shared-api-worker-env
|
|
|
|
x-shared-env: &shared-api-worker-env
|
|
|
|
HTTP_PROXY: ${HTTP_PROXY:-}
|
|
|
|
|
|
|
|
HTTPS_PROXY: ${HTTPS_PROXY:-}
|
|
|
|
|
|
|
|
NO_PROXY: ${NO_PROXY:-localhost,127.0.0.1}
|
|
|
|
|
|
|
|
CONSOLE_API_URL: ${CONSOLE_API_URL:-}
|
|
|
|
CONSOLE_API_URL: ${CONSOLE_API_URL:-}
|
|
|
|
CONSOLE_WEB_URL: ${CONSOLE_WEB_URL:-}
|
|
|
|
CONSOLE_WEB_URL: ${CONSOLE_WEB_URL:-}
|
|
|
|
SERVICE_API_URL: ${SERVICE_API_URL:-}
|
|
|
|
SERVICE_API_URL: ${SERVICE_API_URL:-}
|
|
|
|
@ -392,6 +389,9 @@ 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}
|
|
|
|
|
|
|
|
HTTP_PROXY: ${HTTP_PROXY:-http://host.docker.internal:1081}
|
|
|
|
|
|
|
|
HTTPS_PROXY: ${HTTPS_PROXY:-http://host.docker.internal:1081}
|
|
|
|
|
|
|
|
NO_PROXY: ${NO_PROXY:-weaviate,localhost,127.0.0.1}
|
|
|
|
|
|
|
|
|
|
|
|
services:
|
|
|
|
services:
|
|
|
|
# API service
|
|
|
|
# API service
|
|
|
|
@ -474,7 +474,7 @@ services:
|
|
|
|
volumes:
|
|
|
|
volumes:
|
|
|
|
- ./volumes/db/data:/var/lib/postgresql/data
|
|
|
|
- ./volumes/db/data:/var/lib/postgresql/data
|
|
|
|
healthcheck:
|
|
|
|
healthcheck:
|
|
|
|
test: ["CMD", "pg_isready"]
|
|
|
|
test: [ 'CMD', 'pg_isready' ]
|
|
|
|
interval: 1s
|
|
|
|
interval: 1s
|
|
|
|
timeout: 3s
|
|
|
|
timeout: 3s
|
|
|
|
retries: 30
|
|
|
|
retries: 30
|
|
|
|
@ -491,7 +491,7 @@ services:
|
|
|
|
# Set the redis password when startup redis server.
|
|
|
|
# Set the redis password when startup redis server.
|
|
|
|
command: redis-server --requirepass ${REDIS_PASSWORD:-difyai123456}
|
|
|
|
command: redis-server --requirepass ${REDIS_PASSWORD:-difyai123456}
|
|
|
|
healthcheck:
|
|
|
|
healthcheck:
|
|
|
|
test: ["CMD", "redis-cli", "ping"]
|
|
|
|
test: [ 'CMD', 'redis-cli', 'ping' ]
|
|
|
|
|
|
|
|
|
|
|
|
# The DifySandbox
|
|
|
|
# The DifySandbox
|
|
|
|
sandbox:
|
|
|
|
sandbox:
|
|
|
|
@ -511,7 +511,7 @@ services:
|
|
|
|
volumes:
|
|
|
|
volumes:
|
|
|
|
- ./volumes/sandbox/dependencies:/dependencies
|
|
|
|
- ./volumes/sandbox/dependencies:/dependencies
|
|
|
|
healthcheck:
|
|
|
|
healthcheck:
|
|
|
|
test: ["CMD", "curl", "-f", "http://localhost:8194/health"]
|
|
|
|
test: [ 'CMD', 'curl', '-f', 'http://localhost:8194/health' ]
|
|
|
|
networks:
|
|
|
|
networks:
|
|
|
|
- ssrf_proxy_network
|
|
|
|
- ssrf_proxy_network
|
|
|
|
|
|
|
|
|
|
|
|
@ -524,7 +524,7 @@ services:
|
|
|
|
volumes:
|
|
|
|
volumes:
|
|
|
|
- ./ssrf_proxy/squid.conf.template:/etc/squid/squid.conf.template
|
|
|
|
- ./ssrf_proxy/squid.conf.template:/etc/squid/squid.conf.template
|
|
|
|
- ./ssrf_proxy/docker-entrypoint.sh:/docker-entrypoint-mount.sh
|
|
|
|
- ./ssrf_proxy/docker-entrypoint.sh:/docker-entrypoint-mount.sh
|
|
|
|
entrypoint: ["sh", "-c", "cp /docker-entrypoint-mount.sh /docker-entrypoint.sh && sed -i 's/\r$$//' /docker-entrypoint.sh && chmod +x /docker-entrypoint.sh && /docker-entrypoint.sh"]
|
|
|
|
entrypoint: [ 'sh', '-c', "cp /docker-entrypoint-mount.sh /docker-entrypoint.sh && sed -i 's/\r$$//' /docker-entrypoint.sh && chmod +x /docker-entrypoint.sh && /docker-entrypoint.sh" ]
|
|
|
|
environment:
|
|
|
|
environment:
|
|
|
|
# pls clearly modify the squid env vars to fit your network environment.
|
|
|
|
# pls clearly modify the squid env vars to fit your network environment.
|
|
|
|
HTTP_PORT: ${SSRF_HTTP_PORT:-3128}
|
|
|
|
HTTP_PORT: ${SSRF_HTTP_PORT:-3128}
|
|
|
|
@ -553,8 +553,8 @@ services:
|
|
|
|
- CERTBOT_EMAIL=${CERTBOT_EMAIL}
|
|
|
|
- CERTBOT_EMAIL=${CERTBOT_EMAIL}
|
|
|
|
- CERTBOT_DOMAIN=${CERTBOT_DOMAIN}
|
|
|
|
- CERTBOT_DOMAIN=${CERTBOT_DOMAIN}
|
|
|
|
- CERTBOT_OPTIONS=${CERTBOT_OPTIONS:-}
|
|
|
|
- CERTBOT_OPTIONS=${CERTBOT_OPTIONS:-}
|
|
|
|
entrypoint: ["/docker-entrypoint.sh"]
|
|
|
|
entrypoint: [ '/docker-entrypoint.sh' ]
|
|
|
|
command: ["tail", "-f", "/dev/null"]
|
|
|
|
command: [ 'tail', '-f', '/dev/null' ]
|
|
|
|
|
|
|
|
|
|
|
|
# The nginx reverse proxy.
|
|
|
|
# The nginx reverse proxy.
|
|
|
|
# used for reverse proxying the API service and Web service.
|
|
|
|
# used for reverse proxying the API service and Web service.
|
|
|
|
@ -571,7 +571,7 @@ services:
|
|
|
|
- ./volumes/certbot/conf/live:/etc/letsencrypt/live # cert dir (with certbot container)
|
|
|
|
- ./volumes/certbot/conf/live:/etc/letsencrypt/live # cert dir (with certbot container)
|
|
|
|
- ./volumes/certbot/conf:/etc/letsencrypt
|
|
|
|
- ./volumes/certbot/conf:/etc/letsencrypt
|
|
|
|
- ./volumes/certbot/www:/var/www/html
|
|
|
|
- ./volumes/certbot/www:/var/www/html
|
|
|
|
entrypoint: ["sh", "-c", "cp /docker-entrypoint-mount.sh /docker-entrypoint.sh && sed -i 's/\r$$//' /docker-entrypoint.sh && chmod +x /docker-entrypoint.sh && /docker-entrypoint.sh"]
|
|
|
|
entrypoint: [ 'sh', '-c', "cp /docker-entrypoint-mount.sh /docker-entrypoint.sh && sed -i 's/\r$$//' /docker-entrypoint.sh && chmod +x /docker-entrypoint.sh && /docker-entrypoint.sh" ]
|
|
|
|
environment:
|
|
|
|
environment:
|
|
|
|
NGINX_SERVER_NAME: ${NGINX_SERVER_NAME:-_}
|
|
|
|
NGINX_SERVER_NAME: ${NGINX_SERVER_NAME:-_}
|
|
|
|
NGINX_HTTPS_ENABLED: ${NGINX_HTTPS_ENABLED:-false}
|
|
|
|
NGINX_HTTPS_ENABLED: ${NGINX_HTTPS_ENABLED:-false}
|
|
|
|
@ -593,8 +593,8 @@ services:
|
|
|
|
- api
|
|
|
|
- api
|
|
|
|
- web
|
|
|
|
- web
|
|
|
|
ports:
|
|
|
|
ports:
|
|
|
|
- "${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.
|
|
|
|
# The TiDB vector store.
|
|
|
|
# For production use, please refer to https://github.com/pingcap/tidb-docker-compose
|
|
|
|
# For production use, please refer to https://github.com/pingcap/tidb-docker-compose
|
|
|
|
@ -610,7 +610,7 @@ services:
|
|
|
|
weaviate:
|
|
|
|
weaviate:
|
|
|
|
image: semitechnologies/weaviate:1.19.0
|
|
|
|
image: semitechnologies/weaviate:1.19.0
|
|
|
|
profiles:
|
|
|
|
profiles:
|
|
|
|
- ""
|
|
|
|
- ''
|
|
|
|
- weaviate
|
|
|
|
- weaviate
|
|
|
|
restart: always
|
|
|
|
restart: always
|
|
|
|
volumes:
|
|
|
|
volumes:
|
|
|
|
@ -692,7 +692,7 @@ services:
|
|
|
|
volumes:
|
|
|
|
volumes:
|
|
|
|
- ./volumes/pgvector/data:/var/lib/postgresql/data
|
|
|
|
- ./volumes/pgvector/data:/var/lib/postgresql/data
|
|
|
|
healthcheck:
|
|
|
|
healthcheck:
|
|
|
|
test: ["CMD", "pg_isready"]
|
|
|
|
test: [ 'CMD', 'pg_isready' ]
|
|
|
|
interval: 1s
|
|
|
|
interval: 1s
|
|
|
|
timeout: 3s
|
|
|
|
timeout: 3s
|
|
|
|
retries: 30
|
|
|
|
retries: 30
|
|
|
|
@ -714,7 +714,7 @@ services:
|
|
|
|
volumes:
|
|
|
|
volumes:
|
|
|
|
- ./volumes/pgvecto_rs/data:/var/lib/postgresql/data
|
|
|
|
- ./volumes/pgvecto_rs/data:/var/lib/postgresql/data
|
|
|
|
healthcheck:
|
|
|
|
healthcheck:
|
|
|
|
test: ["CMD", "pg_isready"]
|
|
|
|
test: [ 'CMD', 'pg_isready' ]
|
|
|
|
interval: 1s
|
|
|
|
interval: 1s
|
|
|
|
timeout: 3s
|
|
|
|
timeout: 3s
|
|
|
|
retries: 30
|
|
|
|
retries: 30
|
|
|
|
@ -747,7 +747,7 @@ services:
|
|
|
|
OB_SYS_PASSWORD: ${OCEANBASE_VECTOR_PASSWORD:-difyai123456}
|
|
|
|
OB_SYS_PASSWORD: ${OCEANBASE_VECTOR_PASSWORD:-difyai123456}
|
|
|
|
OB_TENANT_PASSWORD: ${OCEANBASE_VECTOR_PASSWORD:-difyai123456}
|
|
|
|
OB_TENANT_PASSWORD: ${OCEANBASE_VECTOR_PASSWORD:-difyai123456}
|
|
|
|
OB_CLUSTER_NAME: ${OCEANBASE_CLUSTER_NAME:-difyai}
|
|
|
|
OB_CLUSTER_NAME: ${OCEANBASE_CLUSTER_NAME:-difyai}
|
|
|
|
OB_SERVER_IP: "127.0.0.1"
|
|
|
|
OB_SERVER_IP: '127.0.0.1'
|
|
|
|
|
|
|
|
|
|
|
|
# Oracle vector database
|
|
|
|
# Oracle vector database
|
|
|
|
oracle:
|
|
|
|
oracle:
|
|
|
|
@ -779,7 +779,7 @@ services:
|
|
|
|
- ./volumes/milvus/etcd:/etcd
|
|
|
|
- ./volumes/milvus/etcd:/etcd
|
|
|
|
command: etcd -advertise-client-urls=http://127.0.0.1:2379 -listen-client-urls http://0.0.0.0:2379 --data-dir /etcd
|
|
|
|
command: etcd -advertise-client-urls=http://127.0.0.1:2379 -listen-client-urls http://0.0.0.0:2379 --data-dir /etcd
|
|
|
|
healthcheck:
|
|
|
|
healthcheck:
|
|
|
|
test: ["CMD", "etcdctl", "endpoint", "health"]
|
|
|
|
test: [ 'CMD', 'etcdctl', 'endpoint', 'health' ]
|
|
|
|
interval: 30s
|
|
|
|
interval: 30s
|
|
|
|
timeout: 20s
|
|
|
|
timeout: 20s
|
|
|
|
retries: 3
|
|
|
|
retries: 3
|
|
|
|
@ -798,7 +798,7 @@ services:
|
|
|
|
- ./volumes/milvus/minio:/minio_data
|
|
|
|
- ./volumes/milvus/minio:/minio_data
|
|
|
|
command: minio server /minio_data --console-address ":9001"
|
|
|
|
command: minio server /minio_data --console-address ":9001"
|
|
|
|
healthcheck:
|
|
|
|
healthcheck:
|
|
|
|
test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
|
|
|
|
test: [ 'CMD', 'curl', '-f', 'http://localhost:9000/minio/health/live' ]
|
|
|
|
interval: 30s
|
|
|
|
interval: 30s
|
|
|
|
timeout: 20s
|
|
|
|
timeout: 20s
|
|
|
|
retries: 3
|
|
|
|
retries: 3
|
|
|
|
@ -810,7 +810,7 @@ services:
|
|
|
|
image: milvusdb/milvus:v2.5.0-beta
|
|
|
|
image: milvusdb/milvus:v2.5.0-beta
|
|
|
|
profiles:
|
|
|
|
profiles:
|
|
|
|
- milvus
|
|
|
|
- milvus
|
|
|
|
command: ["milvus", "run", "standalone"]
|
|
|
|
command: [ 'milvus', 'run', 'standalone' ]
|
|
|
|
environment:
|
|
|
|
environment:
|
|
|
|
ETCD_ENDPOINTS: ${ETCD_ENDPOINTS:-etcd:2379}
|
|
|
|
ETCD_ENDPOINTS: ${ETCD_ENDPOINTS:-etcd:2379}
|
|
|
|
MINIO_ADDRESS: ${MINIO_ADDRESS:-minio:9000}
|
|
|
|
MINIO_ADDRESS: ${MINIO_ADDRESS:-minio:9000}
|
|
|
|
@ -818,7 +818,7 @@ services:
|
|
|
|
volumes:
|
|
|
|
volumes:
|
|
|
|
- ./volumes/milvus/milvus:/var/lib/milvus
|
|
|
|
- ./volumes/milvus/milvus:/var/lib/milvus
|
|
|
|
healthcheck:
|
|
|
|
healthcheck:
|
|
|
|
test: ["CMD", "curl", "-f", "http://localhost:9091/healthz"]
|
|
|
|
test: [ 'CMD', 'curl', '-f', 'http://localhost:9091/healthz' ]
|
|
|
|
interval: 30s
|
|
|
|
interval: 30s
|
|
|
|
start_period: 90s
|
|
|
|
start_period: 90s
|
|
|
|
timeout: 20s
|
|
|
|
timeout: 20s
|
|
|
|
@ -903,18 +903,18 @@ services:
|
|
|
|
node.name: dify-es0
|
|
|
|
node.name: dify-es0
|
|
|
|
discovery.type: single-node
|
|
|
|
discovery.type: single-node
|
|
|
|
xpack.license.self_generated.type: basic
|
|
|
|
xpack.license.self_generated.type: basic
|
|
|
|
xpack.security.enabled: "true"
|
|
|
|
xpack.security.enabled: 'true'
|
|
|
|
xpack.security.enrollment.enabled: "false"
|
|
|
|
xpack.security.enrollment.enabled: 'false'
|
|
|
|
xpack.security.http.ssl.enabled: "false"
|
|
|
|
xpack.security.http.ssl.enabled: 'false'
|
|
|
|
ports:
|
|
|
|
ports:
|
|
|
|
- ${ELASTICSEARCH_PORT:-9200}:9200
|
|
|
|
- ${ELASTICSEARCH_PORT:-9200}:9200
|
|
|
|
deploy:
|
|
|
|
deploy:
|
|
|
|
resources:
|
|
|
|
resources:
|
|
|
|
limits:
|
|
|
|
limits:
|
|
|
|
memory: 2g
|
|
|
|
memory: 2g
|
|
|
|
entrypoint: ["sh", "-c", "sh /docker-entrypoint-mount.sh"]
|
|
|
|
entrypoint: [ 'sh', '-c', "sh /docker-entrypoint-mount.sh" ]
|
|
|
|
healthcheck:
|
|
|
|
healthcheck:
|
|
|
|
test: ["CMD", "curl", "-s", "http://localhost:9200/_cluster/health?pretty"]
|
|
|
|
test: [ 'CMD', 'curl', '-s', 'http://localhost:9200/_cluster/health?pretty' ]
|
|
|
|
interval: 30s
|
|
|
|
interval: 30s
|
|
|
|
timeout: 10s
|
|
|
|
timeout: 10s
|
|
|
|
retries: 50
|
|
|
|
retries: 50
|
|
|
|
@ -932,17 +932,17 @@ services:
|
|
|
|
environment:
|
|
|
|
environment:
|
|
|
|
XPACK_ENCRYPTEDSAVEDOBJECTS_ENCRYPTIONKEY: d1a66dfd-c4d3-4a0a-8290-2abcb83ab3aa
|
|
|
|
XPACK_ENCRYPTEDSAVEDOBJECTS_ENCRYPTIONKEY: d1a66dfd-c4d3-4a0a-8290-2abcb83ab3aa
|
|
|
|
NO_PROXY: localhost,127.0.0.1,elasticsearch,kibana
|
|
|
|
NO_PROXY: localhost,127.0.0.1,elasticsearch,kibana
|
|
|
|
XPACK_SECURITY_ENABLED: "true"
|
|
|
|
XPACK_SECURITY_ENABLED: 'true'
|
|
|
|
XPACK_SECURITY_ENROLLMENT_ENABLED: "false"
|
|
|
|
XPACK_SECURITY_ENROLLMENT_ENABLED: 'false'
|
|
|
|
XPACK_SECURITY_HTTP_SSL_ENABLED: "false"
|
|
|
|
XPACK_SECURITY_HTTP_SSL_ENABLED: 'false'
|
|
|
|
XPACK_FLEET_ISAIRGAPPED: "true"
|
|
|
|
XPACK_FLEET_ISAIRGAPPED: 'true'
|
|
|
|
I18N_LOCALE: zh-CN
|
|
|
|
I18N_LOCALE: zh-CN
|
|
|
|
SERVER_PORT: "5601"
|
|
|
|
SERVER_PORT: '5601'
|
|
|
|
ELASTICSEARCH_HOSTS: http://elasticsearch:9200
|
|
|
|
ELASTICSEARCH_HOSTS: http://elasticsearch:9200
|
|
|
|
ports:
|
|
|
|
ports:
|
|
|
|
- ${KIBANA_PORT:-5601}:5601
|
|
|
|
- ${KIBANA_PORT:-5601}:5601
|
|
|
|
healthcheck:
|
|
|
|
healthcheck:
|
|
|
|
test: ["CMD-SHELL", "curl -s http://localhost:5601 >/dev/null || exit 1"]
|
|
|
|
test: [ 'CMD-SHELL', 'curl -s http://localhost:5601 >/dev/null || exit 1' ]
|
|
|
|
interval: 30s
|
|
|
|
interval: 30s
|
|
|
|
timeout: 10s
|
|
|
|
timeout: 10s
|
|
|
|
retries: 3
|
|
|
|
retries: 3
|
|
|
|
|