chore: format
This commit is contained in:
201
apps/dify/docker-compose.yaml
Normal file
201
apps/dify/docker-compose.yaml
Normal file
@@ -0,0 +1,201 @@
|
||||
x-defaults: &defaults
|
||||
restart: unless-stopped
|
||||
logging:
|
||||
driver: json-file
|
||||
options:
|
||||
max-size: 100m
|
||||
max-file: "3"
|
||||
|
||||
services:
|
||||
dify-api:
|
||||
<<: *defaults
|
||||
image: ${GLOBAL_REGISTRY:-}langgenius/dify-api:${DIFY_VERSION:-0.18.2}
|
||||
depends_on:
|
||||
dify-db:
|
||||
condition: service_healthy
|
||||
dify-redis:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
- TZ=${TZ:-UTC}
|
||||
- MODE=api
|
||||
- LOG_LEVEL=${LOG_LEVEL:-INFO}
|
||||
- SECRET_KEY=${SECRET_KEY:-sk-9f73s3ljTXVcMT3Blb3ljTqtsKiGHXVcMT3BlbkFJLK7U}
|
||||
- DATABASE_URL=postgresql://${POSTGRES_USER:-dify}:${POSTGRES_PASSWORD:-difypass}@dify-db:5432/${POSTGRES_DB:-dify}
|
||||
- REDIS_HOST=dify-redis
|
||||
- REDIS_PORT=6379
|
||||
- REDIS_DB=0
|
||||
- REDIS_PASSWORD=${REDIS_PASSWORD:-}
|
||||
- CELERY_BROKER_URL=redis://:${REDIS_PASSWORD:-}@dify-redis:6379/1
|
||||
- STORAGE_TYPE=${STORAGE_TYPE:-local}
|
||||
- VECTOR_STORE=${VECTOR_STORE:-weaviate}
|
||||
- WEAVIATE_ENDPOINT=http://dify-weaviate:8080
|
||||
volumes:
|
||||
- dify_storage:/app/api/storage
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: ${DIFY_API_CPU_LIMIT:-1.0}
|
||||
memory: ${DIFY_API_MEMORY_LIMIT:-2G}
|
||||
reservations:
|
||||
cpus: ${DIFY_API_CPU_RESERVATION:-0.5}
|
||||
memory: ${DIFY_API_MEMORY_RESERVATION:-1G}
|
||||
healthcheck:
|
||||
test:
|
||||
[
|
||||
"CMD",
|
||||
"wget",
|
||||
"--no-verbose",
|
||||
"--tries=1",
|
||||
"--spider",
|
||||
"http://localhost:5001/health",
|
||||
]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
start_period: 30s
|
||||
|
||||
dify-worker:
|
||||
<<: *defaults
|
||||
image: ${GLOBAL_REGISTRY:-}langgenius/dify-api:${DIFY_VERSION:-0.18.2}
|
||||
depends_on:
|
||||
dify-db:
|
||||
condition: service_healthy
|
||||
dify-redis:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
- TZ=${TZ:-UTC}
|
||||
- MODE=worker
|
||||
- LOG_LEVEL=${LOG_LEVEL:-INFO}
|
||||
- SECRET_KEY=${SECRET_KEY:-sk-9f73s3ljTXVcMT3Blb3ljTqtsKiGHXVcMT3BlbkFJLK7U}
|
||||
- DATABASE_URL=postgresql://${POSTGRES_USER:-dify}:${POSTGRES_PASSWORD:-difypass}@dify-db:5432/${POSTGRES_DB:-dify}
|
||||
- REDIS_HOST=dify-redis
|
||||
- REDIS_PORT=6379
|
||||
- REDIS_DB=0
|
||||
- REDIS_PASSWORD=${REDIS_PASSWORD:-}
|
||||
- CELERY_BROKER_URL=redis://:${REDIS_PASSWORD:-}@dify-redis:6379/1
|
||||
- STORAGE_TYPE=${STORAGE_TYPE:-local}
|
||||
- VECTOR_STORE=${VECTOR_STORE:-weaviate}
|
||||
- WEAVIATE_ENDPOINT=http://dify-weaviate:8080
|
||||
volumes:
|
||||
- dify_storage:/app/api/storage
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: ${DIFY_WORKER_CPU_LIMIT:-1.0}
|
||||
memory: ${DIFY_WORKER_MEMORY_LIMIT:-2G}
|
||||
reservations:
|
||||
cpus: ${DIFY_WORKER_CPU_RESERVATION:-0.5}
|
||||
memory: ${DIFY_WORKER_MEMORY_RESERVATION:-1G}
|
||||
|
||||
dify-web:
|
||||
<<: *defaults
|
||||
image: ${GLOBAL_REGISTRY:-}langgenius/dify-web:${DIFY_VERSION:-0.18.2}
|
||||
depends_on:
|
||||
dify-api:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
- TZ=${TZ:-UTC}
|
||||
- NEXT_PUBLIC_API_URL=${DIFY_API_URL:-http://localhost:5001}
|
||||
- NEXT_PUBLIC_APP_URL=${DIFY_APP_URL:-http://localhost:3000}
|
||||
ports:
|
||||
- "${DIFY_PORT_OVERRIDE:-3000}:3000"
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: ${DIFY_WEB_CPU_LIMIT:-0.5}
|
||||
memory: ${DIFY_WEB_MEMORY_LIMIT:-512M}
|
||||
reservations:
|
||||
cpus: ${DIFY_WEB_CPU_RESERVATION:-0.25}
|
||||
memory: ${DIFY_WEB_MEMORY_RESERVATION:-256M}
|
||||
|
||||
dify-db:
|
||||
<<: *defaults
|
||||
image: ${GLOBAL_REGISTRY:-}postgres:15-alpine
|
||||
environment:
|
||||
- TZ=${TZ:-UTC}
|
||||
- POSTGRES_USER=${POSTGRES_USER:-dify}
|
||||
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD:-difypass}
|
||||
- POSTGRES_DB=${POSTGRES_DB:-dify}
|
||||
- PGDATA=/var/lib/postgresql/data/pgdata
|
||||
volumes:
|
||||
- dify_db_data:/var/lib/postgresql/data
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: ${DIFY_DB_CPU_LIMIT:-0.5}
|
||||
memory: ${DIFY_DB_MEMORY_LIMIT:-512M}
|
||||
reservations:
|
||||
cpus: ${DIFY_DB_CPU_RESERVATION:-0.25}
|
||||
memory: ${DIFY_DB_MEMORY_RESERVATION:-256M}
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "pg_isready -U $$POSTGRES_USER -d $$POSTGRES_DB"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
start_period: 30s
|
||||
|
||||
dify-redis:
|
||||
<<: *defaults
|
||||
image: ${GLOBAL_REGISTRY:-}redis:7-alpine
|
||||
command: redis-server --requirepass ${REDIS_PASSWORD:-}
|
||||
environment:
|
||||
- TZ=${TZ:-UTC}
|
||||
volumes:
|
||||
- dify_redis_data:/data
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: ${DIFY_REDIS_CPU_LIMIT:-0.25}
|
||||
memory: ${DIFY_REDIS_MEMORY_LIMIT:-256M}
|
||||
reservations:
|
||||
cpus: ${DIFY_REDIS_CPU_RESERVATION:-0.1}
|
||||
memory: ${DIFY_REDIS_MEMORY_RESERVATION:-128M}
|
||||
healthcheck:
|
||||
test: ["CMD", "redis-cli", "ping"]
|
||||
interval: 10s
|
||||
timeout: 3s
|
||||
retries: 3
|
||||
start_period: 5s
|
||||
|
||||
dify-weaviate:
|
||||
<<: *defaults
|
||||
image: ${GLOBAL_REGISTRY:-}semitechnologies/weaviate:${WEAVIATE_VERSION:-1.28.12}
|
||||
profiles:
|
||||
- weaviate
|
||||
environment:
|
||||
- TZ=${TZ:-UTC}
|
||||
- QUERY_DEFAULTS_LIMIT=25
|
||||
- AUTHENTICATION_ANONYMOUS_ACCESS_ENABLED=true
|
||||
- PERSISTENCE_DATA_PATH=/var/lib/weaviate
|
||||
- DEFAULT_VECTORIZER_MODULE=none
|
||||
- CLUSTER_HOSTNAME=node1
|
||||
volumes:
|
||||
- dify_weaviate_data:/var/lib/weaviate
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: ${DIFY_WEAVIATE_CPU_LIMIT:-0.5}
|
||||
memory: ${DIFY_WEAVIATE_MEMORY_LIMIT:-1G}
|
||||
reservations:
|
||||
cpus: ${DIFY_WEAVIATE_CPU_RESERVATION:-0.25}
|
||||
memory: ${DIFY_WEAVIATE_MEMORY_RESERVATION:-512M}
|
||||
healthcheck:
|
||||
test:
|
||||
[
|
||||
"CMD",
|
||||
"wget",
|
||||
"--no-verbose",
|
||||
"--tries=1",
|
||||
"--spider",
|
||||
"http://localhost:8080/v1/.well-known/ready",
|
||||
]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
start_period: 30s
|
||||
|
||||
volumes:
|
||||
dify_storage:
|
||||
dify_db_data:
|
||||
dify_redis_data:
|
||||
dify_weaviate_data:
|
||||
Reference in New Issue
Block a user