refactor(project): Reorganize frontend and backend directories

This commit is contained in:
2026-03-18 10:45:15 +08:00
parent cc9eaf4cdf
commit 92a139e470
513 changed files with 28251 additions and 287 deletions
+287
View File
@@ -0,0 +1,287 @@
version: '3.8'
name: video-platform
services:
# 基础设施服务
mysql:
image: mysql:8.0
container_name: mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: video_platform
MYSQL_USER: video
MYSQL_PASSWORD: video123
ports:
- "3306:3306"
volumes:
- mysql_data:/var/lib/mysql
- ./sql:/docker-entrypoint-initdb.d
command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --default-authentication-plugin=mysql_native_password
networks:
- video-network
redis:
image: redis:7.0-alpine
container_name: redis
restart: always
ports:
- "6379:6379"
volumes:
- redis_data:/data
command: redis-server --requirepass redis_EsJ8FX
networks:
- video-network
nacos:
image: nacos/nacos-server:v2.3.2
container_name: nacos
restart: always
environment:
- MODE=standalone
- JVM_XMS=512m
- JVM_XMX=512m
# 添加Nacos参数,确保正确处理服务注册
- NACOS_AUTH_ENABLE=false
- PREFER_HOST_MODE=hostname
- NACOS_SERVER_IP=${HOST_IP:-127.0.0.1}
ports:
- "8848:8848"
- "9848:9848"
- "9849:9849"
networks:
- video-network
rmqnamesrv:
image: apache/rocketmq:5.1.4
container_name: rmqnamesrv
restart: always
ports:
- "9876:9876"
command: sh mqnamesrv
networks:
- video-network
rmqbroker:
image: apache/rocketmq:5.1.4
container_name: rmqbroker
restart: always
ports:
- "10909:10909"
- "10911:10911"
environment:
- NAMESRV_ADDR=rmqnamesrv:9876
- JAVA_OPTS=-Duser.home=/opt
command: sh mqbroker -c /home/rocketmq/rocketmq-5.1.4/conf/broker.conf
depends_on:
- rmqnamesrv
networks:
- video-network
minio:
image: quay.io/minio/minio
container_name: minio
restart: always
ports:
- "9002:9000"
- "9001:9001"
environment:
- MINIO_ROOT_USER=minioadmin
- MINIO_ROOT_PASSWORD=minioadmin
volumes:
- minio_data:/data
command: server /data --console-address ":9001"
networks:
- video-network
sentinel:
image: sentinel-dashboard:1.8.6
container_name: sentinel
restart: always
ports:
- "8880:8080"
networks:
- video-network
# 微服务
video-gateway:
build:
context: ./video-gateway
dockerfile: Dockerfile
container_name: video-gateway
restart: always
ports:
- "9000:9000"
environment:
- SPRING_PROFILES_ACTIVE=prod
- NACOS_HOST=nacos
- NACOS_PORT=8848
- SENTINEL_HOST=sentinel
- SENTINEL_PORT=8080
- JAVA_OPTS=-Xms128m -Xmx128m -XX:MetaspaceSize=64m -XX:MaxMetaspaceSize=128m
# 添加IP环境变量,用于服务注册
- GATEWAY_IP=${HOST_IP:-127.0.0.1}
depends_on:
- nacos
deploy:
resources:
limits:
memory: 256M
networks:
- video-network
video-auth:
build:
context: ./video-auth
dockerfile: Dockerfile
container_name: video-auth
restart: always
environment:
- SPRING_PROFILES_ACTIVE=prod
- NACOS_HOST=nacos
- NACOS_PORT=8848
- MYSQL_HOST=mysql
- MYSQL_PORT=3306
- REDIS_HOST=redis
- REDIS_PORT=6379
# 添加IP环境变量,用于服务注册
- AUTH_IP=${HOST_IP:-127.0.0.1}
depends_on:
- nacos
- mysql
- redis
networks:
- video-network
video-user:
build:
context: ./video-user
dockerfile: Dockerfile
container_name: video-user
restart: always
environment:
- SPRING_PROFILES_ACTIVE=prod
- NACOS_HOST=nacos
- NACOS_PORT=8848
- MYSQL_HOST=mysql
- MYSQL_PORT=3306
- REDIS_HOST=redis
- REDIS_PORT=6379
# 添加IP环境变量,用于服务注册
- USER_IP=${HOST_IP:-127.0.0.1}
depends_on:
- nacos
- mysql
- redis
networks:
- video-network
video-content:
build:
context: ./video-content
dockerfile: Dockerfile
container_name: video-content
restart: always
environment:
- SPRING_PROFILES_ACTIVE=prod
- NACOS_HOST=nacos
- NACOS_PORT=8848
- MYSQL_HOST=mysql
- MYSQL_PORT=3306
- REDIS_HOST=redis
- REDIS_PORT=6379
- ROCKETMQ_HOST=rmqnamesrv
- ROCKETMQ_PORT=9876
- MINIO_HOST=minio
- MINIO_PORT=9000
- MINIO_ACCESS_KEY=minioadmin
- MINIO_SECRET_KEY=minioadmin
- MINIO_BUCKET=video-platform
# 添加IP环境变量,用于服务注册
- CONTENT_IP=${HOST_IP:-127.0.0.1}
depends_on:
- nacos
- mysql
- redis
- rmqnamesrv
- minio
networks:
- video-network
video-admin:
build:
context: ./video-admin
dockerfile: Dockerfile
container_name: video-admin
restart: always
environment:
- SPRING_PROFILES_ACTIVE=prod
- NACOS_HOST=nacos
- NACOS_PORT=8848
- MYSQL_HOST=mysql
- MYSQL_PORT=3306
- REDIS_HOST=redis
- REDIS_PORT=6379
# 添加IP环境变量,用于服务注册
- ADMIN_IP=${HOST_IP:-127.0.0.1}
depends_on:
- nacos
- mysql
- redis
networks:
- video-network
video-comment:
build:
context: ./video-comment
dockerfile: Dockerfile
container_name: video-comment
restart: always
environment:
- SPRING_PROFILES_ACTIVE=prod
- NACOS_HOST=nacos
- NACOS_PORT=8848
- MYSQL_HOST=mysql
- MYSQL_PORT=3306
- REDIS_HOST=redis
- REDIS_PORT=6379
# 添加IP环境变量,用于服务注册
- COMMENT_IP=${HOST_IP:-127.0.0.1}
depends_on:
- nacos
- mysql
- redis
networks:
- video-network
video-recommend:
build:
context: ./video-recommend
dockerfile: Dockerfile
container_name: video-recommend
restart: always
environment:
- SPRING_PROFILES_ACTIVE=prod
- NACOS_HOST=nacos
- NACOS_PORT=8848
- MYSQL_HOST=mysql
- MYSQL_PORT=3306
- REDIS_HOST=redis
- REDIS_PORT=6379
# 添加IP环境变量,用于服务注册
- RECOMMEND_IP=${HOST_IP:-127.0.0.1}
depends_on:
- nacos
- mysql
- redis
networks:
- video-network
networks:
video-network:
driver: bridge
volumes:
mysql_data:
redis_data:
minio_data: