43 lines
895 B
YAML
43 lines
895 B
YAML
version: '3.8'
|
|
|
|
services:
|
|
# Next.js 应用服务
|
|
nextjs-app:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
container_name: nextjs-saas-app
|
|
ports:
|
|
- "3000:3000"
|
|
environment:
|
|
- NODE_ENV=production
|
|
- DB_HOST=mysql
|
|
- DB_USER=root
|
|
- DB_PASSWORD=aiwoQwo520..
|
|
- DB_NAME=saas_db
|
|
- DB_PORT=3306
|
|
depends_on:
|
|
- mysql
|
|
restart: unless-stopped
|
|
volumes:
|
|
- ./uploads:/app/uploads
|
|
|
|
# MySQL 数据库服务
|
|
mysql:
|
|
image: mysql:8.0
|
|
container_name: my-mysql
|
|
restart: unless-stopped
|
|
environment:
|
|
- MYSQL_ROOT_PASSWORD=aiwoQwo520..
|
|
- MYSQL_DATABASE=saas_db
|
|
- MYSQL_USER=saas_user
|
|
- MYSQL_PASSWORD=saas_password
|
|
ports:
|
|
- "3306:3306"
|
|
volumes:
|
|
- mysql_data:/var/lib/mysql
|
|
- ./scripts:/docker-entrypoint-initdb.d
|
|
|
|
# 定义持久化卷
|
|
volumes:
|
|
mysql_data: |