Skip to content

Dify 1.14 Docker 服务架构解析

核心服务(默认启用)

服务镜像端口说明
nginxnginx:latest80, 443反向代理,统一入口
weblanggenius/dify-web:1.14.03000前端 Next.js 应用
apilanggenius/dify-api:1.14.05001后端 API 服务
workerlanggenius/dify-api:1.14.0-Celery 异步任务执行
worker_beatlanggenius/dify-api:1.14.0-Celery 定时调度
db_postgrespostgres:15-alpine5432PostgreSQL 主数据库
redisredis:6-alpine6379缓存 & Celery broker
sandboxlanggenius/dify-sandbox:0.2.158194代码执行沙箱
ssrf_proxyubuntu/squid:latest3128SSRF 防护代理
plugin_daemonlanggenius/dify-plugin-daemon:0.6.05002, 5003插件管理守护进程
init_permissionsbusybox:latest-初始化文件权限(一次性)

默认组合:PostgreSQL + Redis + Nginx + Weaviate

可选关系数据库(通过 profile 切换)

Profile服务镜像端口
mysqldb_mysqlmysql:8.03306
oceanbaseoceanbaseoceanbase/oceanbase-ce:4.3.5-lts2881
seekdbseekdboceanbase/seekdb:latest2881
opengaussopengaussopengauss/opengauss:7.0.0-RC16600
oracleoraclecontainer-registry.oracle.com/database/free:latest1521
matrixonematrixonematrixorigin/matrixone:2.1.16001
irisiriscontainers.intersystems.com/intersystems/iris-community:2025.31972, 52773

可选向量数据库(通过 profile 切换)

Profile服务镜像端口说明
weaviateweaviatesemitechnologies/weaviate:1.27.08080, 50051默认选项
pgvectorpgvectorpgvector/pgvector:pg165432PostgreSQL + pgvector 扩展
pgvecto-rspgvecto-rstensorchord/pgvecto-rs:pg16-v0.3.05432pgvecto.rs
qdrantqdrantlanggenius/qdrant:v1.8.36333Qdrant
chromachromaghcr.io/chroma-core/chroma:0.5.208000Chroma
milvusmilvus-standalonemilvusdb/milvus:v2.6.319530, 9091Milvus(含 etcd + MinIO)
opensearchopensearchopensearchproject/opensearch:latest9200OpenSearch + Dashboards
elasticsearchelasticsearchdocker.elastic.co/elasticsearch/elasticsearch:8.14.39200Elasticsearch + Kibana
couchbasecouchbase-server本地构建8091Couchbase
myscalemyscalemyscale/myscaledb:1.6.48123MyScale

其他可选服务

Profile服务镜像说明
unstructuredunstructuredunstructured-io/unstructured-api:latestETL 文档解析
certbotcertbotcertbot/certbotSSL 证书自动管理

服务依赖链

init_permissions(首次运行)

    ├── redis ──────────────────────┐
    │                               │
    ├── db_postgres ────────────────┤
    │                               ├── api ──────┐
    │                               ├── worker     │
    │                               ├── worker_beat│
    │                               │              ├── nginx(统一入口)
    │                               │              │
    ├── sandbox ── ssrf_proxy       │              ├── web(前端)
    │                               │              │
    └── plugin_daemon ──────────────┘              │

    向量数据库(可选,按 profile 启用)──────────────┘

配置方式

.env 文件中控制:

bash
# 启用的服务 profile
COMPOSE_PROFILES=weaviate,postgresql

# 主数据库类型
DB_TYPE=postgresql

# 向量数据库类型
VECTOR_STORE=weaviate

# 切换示例:使用 MySQL + Qdrant
# COMPOSE_PROFILES=mysql,qdrant
# DB_TYPE=mysql
# VECTOR_STORE=qdrant

数据卷

docker/volumes/
├── app/storage          # 用户文件和应用数据
├── db/data              # 数据库数据
├── redis/data           # Redis 持久化
├── sandbox/             # 沙箱环境
├── plugin_daemon/       # 插件存储
├── weaviate/            # Weaviate 数据
├── pgvector/            # pgvector 数据
├── milvus/              # Milvus 数据
└── certbot/             # SSL 证书

Last updated: