64 lines
1.4 KiB
YAML
64 lines
1.4 KiB
YAML
|
|
version: '3.9'
|
||
|
|
|
||
|
|
services:
|
||
|
|
# 后端服务
|
||
|
|
backend:
|
||
|
|
build: .
|
||
|
|
container_name: backend
|
||
|
|
working_dir: /app
|
||
|
|
volumes:
|
||
|
|
- ./src:/app/src # 映射源代码
|
||
|
|
- ./saves:/app/saves
|
||
|
|
- /hdd/zwj/models:/hdd/zwj/models
|
||
|
|
- backend-pip-cache:/root/.cache/pip # 缓存 pip 依赖
|
||
|
|
ports:
|
||
|
|
- "5000:5000" # 曝露后端端口
|
||
|
|
depends_on:
|
||
|
|
- neo4j # 确保 Neo4j 启动
|
||
|
|
networks:
|
||
|
|
- app-network
|
||
|
|
environment:
|
||
|
|
- NEO4J_URI=bolt://neo4j:7687 # 使用 neo4j 容器名称而非 localhost
|
||
|
|
- NEO4J_USERNAME=neo4j
|
||
|
|
- NEO4J_PASSWORD=0123456789
|
||
|
|
|
||
|
|
# 前端服务
|
||
|
|
frontend:
|
||
|
|
build:
|
||
|
|
context: ./web # 设置构建上下文为 web 文件夹
|
||
|
|
dockerfile: Dockerfile # 使用 web 文件夹内的 Dockerfile
|
||
|
|
container_name: frontend
|
||
|
|
ports:
|
||
|
|
- "80:80"
|
||
|
|
depends_on:
|
||
|
|
- backend
|
||
|
|
networks:
|
||
|
|
- app-network
|
||
|
|
|
||
|
|
# Neo4j 图数据库服务
|
||
|
|
neo4j:
|
||
|
|
image: neo4j:latest
|
||
|
|
container_name: neo4j
|
||
|
|
volumes:
|
||
|
|
- ./local_neo4j/conf:/var/lib/neo4j/conf
|
||
|
|
- ./local_neo4j/import:/var/lib/neo4j/import
|
||
|
|
- ./local_neo4j/plugins:/plugins
|
||
|
|
- ./local_neo4j/data:/data
|
||
|
|
- ./local_neo4j/logs:/var/lib/neo4j/logs
|
||
|
|
restart: always
|
||
|
|
ports:
|
||
|
|
- "7474:7474"
|
||
|
|
- "7687:7687"
|
||
|
|
environment:
|
||
|
|
- NEO4J_AUTH=neo4j/0123456789
|
||
|
|
networks:
|
||
|
|
- app-network
|
||
|
|
|
||
|
|
# 定义网络
|
||
|
|
networks:
|
||
|
|
app-network:
|
||
|
|
driver: bridge
|
||
|
|
|
||
|
|
volumes:
|
||
|
|
backend-pip-cache:
|