增加后台管理,支持docker部署

This commit is contained in:
ageer
2024-05-17 02:00:31 +08:00
parent ef7434ed04
commit 7fe89a931b
59 changed files with 3911 additions and 1501 deletions

View File

@@ -1,53 +1,30 @@
version: '3'
networks:
mynetwork:
driver: bridge
services:
mysql:
image: mysql:8.0.33
container_name: mysql
environment:
# 时区上海
TZ: Asia/Shanghai
# root 密码
MYSQL_ROOT_PASSWORD: root
# 初始化数据库(后续的初始化sql会在这个库执行)
MYSQL_DATABASE: ry-vue
ports:
- "3306:3306"
- "3307:3306"
volumes:
# 数据挂载
- /docker/mysql/data/:/var/lib/mysql/
# 配置挂载
- /docker/mysql/conf/:/etc/mysql/conf.d/
- ./ry-vue.sql:/docker-entrypoint-initdb.d/ry-vue.sql
command:
# 将mysql8.0默认密码策略 修改为 原先 策略 (mysql8.0对其默认策略做了更改 会导致密码无法匹配)
--default-authentication-plugin=mysql_native_password
--character-set-server=utf8mb4
--collation-server=utf8mb4_general_ci
--explicit_defaults_for_timestamp=true
--lower_case_table_names=1
privileged: true
network_mode: "host"
nginx-web:
image: nginx:1.23.4
container_name: nginx-web
environment:
# 时区上海
TZ: Asia/Shanghai
ports:
- "80:80"
- "443:443"
volumes:
# 证书映射
- /docker/nginx/cert:/etc/nginx/cert
# 配置文件映射
- /docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf
# 页面目录
- /docker/nginx/html:/usr/share/nginx/html
# 日志目录
- /docker/nginx/log:/var/log/nginx
privileged: true
network_mode: "host"
networks:
- mynetwork
redis:
image: redis:6.2.12
@@ -55,100 +32,64 @@ services:
ports:
- "6379:6379"
environment:
# 时区上海
TZ: Asia/Shanghai
volumes:
# 配置文件
- /docker/redis/conf:/redis/config:rw
# 数据文件
- /docker/redis/data/:/redis/data/:rw
command: "redis-server /redis/config/redis.conf"
privileged: true
network_mode: "host"
networks:
- mynetwork
minio:
image: minio/minio:RELEASE.2023-04-13T03-08-07Z
container_name: minio
ruoyi-server:
image: registry.cn-shanghai.aliyuncs.com/ruoyi-ai/ai:1.2.1
ports:
# api 端口
- "9000:9000"
# 控制台端口
- "9001:9001"
- "6039:6039"
container_name: ruoyi-server
environment:
# 时区上海
TZ: Asia/Shanghai
# 管理后台用户名
MINIO_ROOT_USER: ruoyi
# 管理后台密码最小8个字符
MINIO_ROOT_PASSWORD: ruoyi123
# https需要指定域名
#MINIO_SERVER_URL: "https://xxx.com:9000"
#MINIO_BROWSER_REDIRECT_URL: "https://xxx.com:9001"
# 开启压缩 on 开启 off 关闭
MINIO_COMPRESS: "off"
# 扩展名 .pdf,.doc 为空 所有类型均压缩
MINIO_COMPRESS_EXTENSIONS: ""
# mime 类型 application/pdf 为空 所有类型均压缩
MINIO_COMPRESS_MIME_TYPES: ""
# 运行端口号
SERVER_PORT: 6039
# 中转key
CHAT_API_KEY: ${CHAT_API_KEY}
# 中转地址
CHAT_API_HOST: ${CHAT_API_HOST}
# 邮箱授权码
MAIL_PASS: ${MAIL_PASS}
# 易支付商户ID
PAY_PID: ${PAY_PID}
# 易支付商户密钥
PAY_KEY: ${PAY_KEY}
# 数据库连接地址
DB_URL: jdbc:mysql://mysql:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
# 数据库用户名
DB_USERNAME: root
# 数据库用户密码
DB_PASSWORD: root
# Redis地址
REDIS_HOST: redis
# Redis端口
REDIS_PORT: 6379
volumes:
# 映射当前目录下的data目录至容器内/data目录
- /docker/minio/data:/data
# 映射配置目录
- /docker/minio/config:/root/.minio/
command: server --address ':9000' --console-address ':9001' /data # 指定容器中的目录 /data
privileged: true
network_mode: "host"
ruoyi-server1:
image: ruoyi/ruoyi-server:5.0.0
container_name: ruoyi-server1
environment:
# 时区上海
TZ: Asia/Shanghai
SERVER_PORT: 8080
volumes:
# 配置文件
- /docker/server1/logs/:/ruoyi/server/logs/
# skywalking 探针
# - /docker/skywalking/agent/:/ruoyi/skywalking/agent
privileged: true
network_mode: "host"
ruoyi-server2:
image: ruoyi/ruoyi-server:5.0.0
container_name: ruoyi-server2
environment:
# 时区上海
TZ: Asia/Shanghai
SERVER_PORT: 8081
volumes:
# 配置文件
- /docker/server2/logs/:/ruoyi/server/logs/
# skywalking 探针
# - /docker/skywalking/agent/:/ruoyi/skywalking/agent
privileged: true
network_mode: "host"
networks:
- mynetwork
ruoyi-monitor-admin:
image: ruoyi/ruoyi-monitor-admin:5.0.0
container_name: ruoyi-monitor-admin
environment:
# 时区上海
TZ: Asia/Shanghai
volumes:
# 配置文件
- /docker/monitor/logs/:/ruoyi/monitor/logs
ruoyi-web:
image: registry.cn-shanghai.aliyuncs.com/ruoyi-ai/web:1.2.1
ports:
- "8081:8081"
container_name: ruoyi-web
privileged: true
network_mode: "host"
networks:
- mynetwork
ruoyi-xxl-job-admin:
image: ruoyi/ruoyi-xxl-job-admin:5.0.0
container_name: ruoyi-xxl-job-admin
environment:
# 时区上海
TZ: Asia/Shanghai
volumes:
# 配置文件
- /docker/xxljob/logs/:/ruoyi/xxljob/logs
ruoyi-admin:
image: registry.cn-shanghai.aliyuncs.com/ruoyi-ai/admin:1.2.1
ports:
- "8082:8082"
container_name: ruoyi-admin
privileged: true
network_mode: "host"
networks:
- mynetwork