fundplatform/docker/app/docker-compose.yml
zhangjf 32abc57338 feat: 添加开发规则清单和完善前后端配置
主要变更:
1. 开发规范文档
   - 新增《开发规则清单.md》,涵盖技术栈、Maven配置、Lombok规范等
   - 记录 Lombok 在 Java 21 + Spring Boot 3 中的已知问题
   - 建立代码生成和开发流程规范

2. 前端功能增强
   - 新增系统配置管理页面(sysConfig.vue)
   - 新增数据字典管理页面(sysDict.vue)
   - 新增财务收据管理页面(receipt.vue)
   - 更新登录认证 API 配置

3. Docker 部署配置
   - 新增应用容器配置(docker-compose.yml)
   - 新增 Nginx 反向代理配置
   - 新增 ELK 日志收集配置(Elasticsearch + Logstash + Filebeat)

4. 性能测试工具
   - 新增 JMeter 测试计划(fundplatform-test-plan.jmx)
   - 新增性能测试执行脚本

5. 环境配置更新
   - 更新 .env 环境变量配置
   - 同步 fundplatform 子模块最新提交
2026-02-17 09:19:14 +08:00

184 lines
4.3 KiB
YAML

version: '3.8'
services:
# MySQL数据库
mysql:
image: mysql:8.0
container_name: fund-mysql
environment:
MYSQL_ROOT_PASSWORD: root123456
MYSQL_DATABASE: fundplatform
MYSQL_USER: funduser
MYSQL_PASSWORD: fund123456
TZ: Asia/Shanghai
ports:
- "3306:3306"
volumes:
- mysql-data:/var/lib/mysql
- ./init:/docker-entrypoint-initdb.d
command: --default-authentication-plugin=mysql_native_password --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
networks:
- fund-network
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
interval: 10s
timeout: 5s
retries: 5
# Redis缓存
redis:
image: redis:7-alpine
container_name: fund-redis
ports:
- "6379:6379"
volumes:
- redis-data:/data
- ./redis/redis.conf:/usr/local/etc/redis/redis.conf
command: redis-server /usr/local/etc/redis/redis.conf --requirepass zjf@123456
networks:
- fund-network
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 5
# Nacos服务注册中心
nacos:
image: nacos/nacos-server:v2.3.0
container_name: fund-nacos
environment:
MODE: standalone
SPRING_DATASOURCE_PLATFORM: mysql
MYSQL_SERVICE_HOST: mysql
MYSQL_SERVICE_DB_NAME: nacos
MYSQL_SERVICE_PORT: 3306
MYSQL_SERVICE_USER: root
MYSQL_SERVICE_PASSWORD: root123456
NACOS_AUTH_ENABLE: true
NACOS_CORE_AUTH_SERVER_IDENTITY_KEY: fundplatform
NACOS_CORE_AUTH_SERVER_IDENTITY_VALUE: fundplatform123
NACOS_CORE_AUTH_DEFAULT_TOKEN_SECRET_KEY: VGhpc0lzTXlDdXN0b21TZWNyZXRLZXkwMTIzNDU2Nzg=
JVM_XMS: 512m
JVM_XMX: 512m
ports:
- "8848:8848"
- "9848:9848"
volumes:
- nacos-data:/home/nacos/data
networks:
- fund-network
depends_on:
mysql:
condition: service_healthy
# fund-sys服务
fund-sys:
build:
context: ../../fundplatform
dockerfile: fund-sys/Dockerfile
container_name: fund-sys
environment:
SPRING_PROFILES_ACTIVE: docker
NACOS_SERVER_ADDR: nacos:8848
MYSQL_HOST: mysql
REDIS_HOST: redis
REDIS_PASSWORD: zjf@123456
JVM_OPTS: -Xms512m -Xmx1024m
ports:
- "8080:8080"
volumes:
- ./logs/fund-sys:/app/logs
networks:
- fund-network
depends_on:
mysql:
condition: service_healthy
redis:
condition: service_healthy
nacos:
condition: service_started
restart: unless-stopped
# fund-cust服务
fund-cust:
build:
context: ../../fundplatform
dockerfile: fund-cust/Dockerfile
container_name: fund-cust
environment:
SPRING_PROFILES_ACTIVE: docker
NACOS_SERVER_ADDR: nacos:8848
MYSQL_HOST: mysql
REDIS_HOST: redis
REDIS_PASSWORD: zjf@123456
JVM_OPTS: -Xms512m -Xmx1024m
ports:
- "8082:8082"
volumes:
- ./logs/fund-cust:/app/logs
networks:
- fund-network
depends_on:
mysql:
condition: service_healthy
redis:
condition: service_healthy
nacos:
condition: service_started
restart: unless-stopped
# fund-proj服务
fund-proj:
build:
context: ../../fundplatform
dockerfile: fund-proj/Dockerfile
container_name: fund-proj
environment:
SPRING_PROFILES_ACTIVE: docker
NACOS_SERVER_ADDR: nacos:8848
MYSQL_HOST: mysql
REDIS_HOST: redis
REDIS_PASSWORD: zjf@123456
JVM_OPTS: -Xms512m -Xmx1024m
ports:
- "8081:8081"
volumes:
- ./logs/fund-proj:/app/logs
networks:
- fund-network
depends_on:
mysql:
condition: service_healthy
redis:
condition: service_healthy
nacos:
condition: service_started
restart: unless-stopped
# Nginx网关
nginx:
image: nginx:alpine
container_name: fund-nginx
ports:
- "80:80"
- "443:443"
volumes:
- ./nginx/nginx.conf:/etc/nginx/nginx.conf
- ./nginx/html:/usr/share/nginx/html
networks:
- fund-network
depends_on:
- fund-sys
- fund-cust
- fund-proj
volumes:
mysql-data:
redis-data:
nacos-data:
networks:
fund-network:
driver: bridge