Files
asset_helper/backend/docker-compose.yml

82 lines
1.4 KiB
YAML

version: '3.8'
networks:
backend-network:
driver: bridge
services:
# Nginx 网关
nginx:
image: nginx:1.25-alpine
ports:
- "8080:80"
volumes:
- ./nginx.conf:/etc/nginx/nginx.conf:ro
depends_on:
- gateway
networks:
- backend-network
# 网关服务
gateway:
build:
context: ./gateway
dockerfile: Dockerfile
ports:
- "8000:8000"
depends_on:
- user-svc
- redis
networks:
- backend-network
# 用户服务
user-svc:
build:
context: ./services/user-svc
dockerfile: Dockerfile
ports:
- "9000:9000"
depends_on:
- postgres
networks:
- backend-network
# 数据库
postgres:
image: postgres:18.3-alpine3.23
environment:
POSTGRES_USER: admin
POSTGRES_PASSWORD: password
POSTGRES_DB: backend
ports:
- "5432:5432"
volumes:
- postgres-data:/var/lib/postgresql/data
- ./services/user-svc/migrations:/docker-entrypoint-initdb.d
networks:
- backend-network
# Redis
redis:
image: redis:8.6.2-alpine
ports:
- "6379:6379"
volumes:
- redis-data:/var/lib/redis/data
networks:
- backend-network
# Proto 编译服务
proto-builder:
build:
context: ./scripts/docker-proto-builder
dockerfile: Dockerfile
volumes:
- .:/proto
networks:
- backend-network
volumes:
postgres-data:
redis-data: