mirror of
https://gitcode.com/ageerle/ruoyi-ai.git
synced 2026-03-21 16:43:47 +08:00
feat(更新日志):
更新日志 1. 移除个人微信模块 2. 移除直播模块 3. 移除gpts模块 4. 移除应用商店模块 5. 移除套餐管理模块 6. 移除兑换管理模块 ## 微信相关 小程序相关功能迁移至企业版 微信公众号/微信机器人迁移至企业版 微信支付迁移至企业版 ## 功能模块 智能体模块迁移至企业版 插件管理改为MCP应用并迁移至企业版 知识库: excel解析迁移至企业版 pdf图片解析迁移至企业版 milvus qdrant扩展 迁移至企业版
This commit is contained in:
50
script/deploy/one-step-script/template/.env.template
Normal file
50
script/deploy/one-step-script/template/.env.template
Normal file
@@ -0,0 +1,50 @@
|
||||
# Timezone
|
||||
TZ={{TZ}}
|
||||
|
||||
# MySQL Configuration
|
||||
MYSQL_ROOT_PASSWORD={{MYSQL_ROOT_PASSWORD}}
|
||||
MYSQL_DATABASE={{MYSQL_DATABASE}}
|
||||
MYSQL_PORT={{MYSQL_PORT}}
|
||||
|
||||
# Redis Configuration
|
||||
REDIS_PORT={{REDIS_PORT}}
|
||||
REDIS_PASSWORD={{REDIS_PASSWORD}}
|
||||
REDIS_DATABASE={{REDIS_DATABASE}}
|
||||
REDIS_TIMEOUT={{REDIS_TIMEOUT}}
|
||||
|
||||
# Backend Configuration
|
||||
SERVER_PORT={{SERVER_PORT}}
|
||||
DB_URL=jdbc:mysql://mysql:3306/{{MYSQL_DATABASE}}?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
|
||||
DB_USERNAME={{DB_USERNAME}}
|
||||
DB_PASSWORD={{DB_PASSWORD}}
|
||||
REDIS_HOST=redis
|
||||
BACKEND_HOST={{BACKEND_HOST}}
|
||||
|
||||
# Frontend Configuration
|
||||
ADMIN_PORT={{ADMIN_PORT}}
|
||||
WEB_PORT={{WEB_PORT}}
|
||||
FRONTEND_API_BASE_URL={{FRONTEND_API_BASE_URL}}
|
||||
FRONTEND_DEV_PORT={{FRONTEND_DEV_PORT}}
|
||||
|
||||
# Weaviate Configuration
|
||||
WEAVIATE_HTTP_PORT={{WEAVIATE_HTTP_PORT}}
|
||||
WEAVIATE_GRPC_PORT={{WEAVIATE_GRPC_PORT}}
|
||||
WEAVIATE_QUERY_LIMIT={{WEAVIATE_QUERY_LIMIT}}
|
||||
WEAVIATE_ANONYMOUS_ACCESS={{WEAVIATE_ANONYMOUS_ACCESS}}
|
||||
WEAVIATE_DATA_PATH={{WEAVIATE_DATA_PATH}}
|
||||
WEAVIATE_VECTORIZER_MODULE={{WEAVIATE_VECTORIZER_MODULE}}
|
||||
WEAVIATE_MODULES={{WEAVIATE_MODULES}}
|
||||
WEAVIATE_CLUSTER_HOSTNAME={{WEAVIATE_CLUSTER_HOSTNAME}}
|
||||
WEAVIATE_PROTOCOL={{WEAVIATE_PROTOCOL}}
|
||||
WEAVIATE_HOST=weaviate:8080
|
||||
WEAVIATE_CLASSNAME={{WEAVIATE_CLASSNAME}}
|
||||
|
||||
# Production Configuration
|
||||
PROD_DB_URL={{PROD_DB_URL}}
|
||||
PROD_DB_USERNAME={{PROD_DB_USERNAME}}
|
||||
PROD_DB_PASSWORD={{PROD_DB_PASSWORD}}
|
||||
PROD_REDIS_HOST={{PROD_REDIS_HOST}}
|
||||
PROD_REDIS_PORT={{PROD_REDIS_PORT}}
|
||||
PROD_REDIS_DATABASE={{PROD_REDIS_DATABASE}}
|
||||
PROD_REDIS_PASSWORD={{PROD_REDIS_PASSWORD}}
|
||||
PROD_REDIS_TIMEOUT={{PROD_REDIS_TIMEOUT}}
|
||||
@@ -0,0 +1,89 @@
|
||||
---
|
||||
# 数据源配置
|
||||
spring:
|
||||
datasource:
|
||||
type: com.zaxxer.hikari.HikariDataSource
|
||||
dynamic:
|
||||
# 性能分析插件(有性能损耗 不建议生产环境使用)
|
||||
p6spy: false
|
||||
# 设置默认的数据源或者数据源组,默认值即为 master
|
||||
primary: master
|
||||
# 严格模式 匹配不到数据源则报错
|
||||
strict: true
|
||||
datasource:
|
||||
# 主库数据源
|
||||
master:
|
||||
type: ${spring.datasource.type}
|
||||
driverClassName: com.mysql.cj.jdbc.Driver
|
||||
url: {{PROD_DB_URL}}
|
||||
username: {{PROD_DB_USERNAME}}
|
||||
password: {{PROD_DB_PASSWORD}}
|
||||
hikari:
|
||||
# 最大连接池数量
|
||||
maxPoolSize: 20
|
||||
# 最小空闲线程数量
|
||||
minIdle: 10
|
||||
# 配置获取连接等待超时的时间
|
||||
connectionTimeout: 30000
|
||||
# 校验超时时间
|
||||
validationTimeout: 5000
|
||||
# 空闲连接存活最大时间,默认10分钟
|
||||
idleTimeout: 600000
|
||||
# 此属性控制池中连接的最长生命周期,值0表示无限生命周期,默认30分钟
|
||||
maxLifetime: 1800000
|
||||
# 连接测试query(配置检测连接是否有效)
|
||||
connectionTestQuery: SELECT 1
|
||||
# 多久检查一次连接的活性
|
||||
keepaliveTime: 30000
|
||||
|
||||
--- # redis 单机配置
|
||||
spring.data:
|
||||
redis:
|
||||
# 地址
|
||||
host: {{PROD_REDIS_HOST}}
|
||||
# 端口,默认为6379
|
||||
port: {{PROD_REDIS_PORT}}
|
||||
# 数据库索引
|
||||
database: {{PROD_REDIS_DATABASE}}
|
||||
# 密码
|
||||
password: {{PROD_REDIS_PASSWORD}}
|
||||
# 连接超时时间
|
||||
timeout: {{PROD_REDIS_TIMEOUT}}
|
||||
# 是否开启ssl
|
||||
ssl: false
|
||||
|
||||
# 日志配置
|
||||
logging:
|
||||
level:
|
||||
org.ruoyi: info
|
||||
org.springframework: warn
|
||||
config: classpath:logback-plus.xml
|
||||
|
||||
# Sa-Token配置
|
||||
sa-token:
|
||||
# token名称 (同时也是cookie名称)
|
||||
token-name: Authorization
|
||||
# token有效期 设为7天 (必定过期) 单位: 秒
|
||||
timeout: 604800
|
||||
# token临时有效期 (指定时间无操作就过期) 单位: 秒
|
||||
activity-timeout: 604800
|
||||
# 是否允许同一账号并发登录 (为true时允许一起登录, 为false时新登录挤掉旧登录)
|
||||
is-concurrent: true
|
||||
# 在多人登录同一账号时,是否共用一个token (为true时所有登录共用一个token, 为false时每次登录新建一个token)
|
||||
is-share: false
|
||||
# 是否尝试从header里读取token
|
||||
is-read-header: true
|
||||
# 是否尝试从cookie里读取token
|
||||
is-read-cookie: false
|
||||
# token前缀
|
||||
token-prefix: "Bearer"
|
||||
# jwt秘钥
|
||||
jwt-secret-key: abcdefghijklmnopqrstuvwxyz
|
||||
|
||||
# websocket
|
||||
websocket:
|
||||
enabled: true
|
||||
# 路径
|
||||
path: '/resource/websocket'
|
||||
# 设置访问源地址
|
||||
allowedOrigins: '*'
|
||||
@@ -0,0 +1,115 @@
|
||||
version: '3'
|
||||
|
||||
services:
|
||||
mysql:
|
||||
image: registry.cn-shenzhen.aliyuncs.com/breeze-project/mysql:8.0.33
|
||||
container_name: ruoyi-ai-mysql
|
||||
env_file:
|
||||
- ./.env
|
||||
environment:
|
||||
- MYSQL_ROOT_PASSWORD={{MYSQL_ROOT_PASSWORD}}
|
||||
- MYSQL_DATABASE={{MYSQL_DATABASE}}
|
||||
ports:
|
||||
- "{{MYSQL_PORT}}:3306"
|
||||
volumes:
|
||||
- ./mysql-init:/docker-entrypoint-initdb.d
|
||||
- ./data/mysql:/var/lib/mysql
|
||||
command:
|
||||
--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
|
||||
restart: always
|
||||
networks:
|
||||
- ruoyi-net
|
||||
|
||||
redis:
|
||||
image: registry.cn-shenzhen.aliyuncs.com/breeze-project/redis:6.2
|
||||
container_name: ruoyi-ai-redis
|
||||
env_file:
|
||||
- ./.env
|
||||
ports:
|
||||
- "{{REDIS_PORT}}:6379"
|
||||
volumes:
|
||||
- ./data/redis:/data
|
||||
command: redis-server --appendonly yes ${REDIS_PASSWORD:+--requirepass ${REDIS_PASSWORD}}
|
||||
restart: always
|
||||
networks:
|
||||
- ruoyi-net
|
||||
|
||||
weaviate:
|
||||
image: registry.cn-shenzhen.aliyuncs.com/breeze-project/weaviate:1.30.0
|
||||
container_name: ruoyi-ai-weaviate
|
||||
ports:
|
||||
- "{{WEAVIATE_HTTP_PORT}}:8080"
|
||||
- "{{WEAVIATE_GRPC_PORT}}:50051"
|
||||
volumes:
|
||||
- ./data/weaviate:/var/lib/weaviate
|
||||
env_file:
|
||||
- ./.env
|
||||
environment:
|
||||
- QUERY_DEFAULTS_LIMIT={{WEAVIATE_QUERY_LIMIT}}
|
||||
- AUTHENTICATION_ANONYMOUS_ACCESS_ENABLED={{WEAVIATE_ANONYMOUS_ACCESS}}
|
||||
- PERSISTENCE_DATA_PATH={{WEAVIATE_DATA_PATH}}
|
||||
- DEFAULT_VECTORIZER_MODULE={{WEAVIATE_VECTORIZER_MODULE}}
|
||||
- ENABLE_MODULES={{WEAVIATE_MODULES}}
|
||||
- CLUSTER_HOSTNAME={{WEAVIATE_CLUSTER_HOSTNAME}}
|
||||
command: --host 0.0.0.0 --port 8080 --scheme http
|
||||
restart: always
|
||||
networks:
|
||||
- ruoyi-net
|
||||
|
||||
ruoyi-backend:
|
||||
image: ruoyi-ai-backend:latest
|
||||
container_name: ruoyi-ai-backend
|
||||
env_file:
|
||||
- ./.env
|
||||
ports:
|
||||
- "{{SERVER_PORT}}:{{SERVER_PORT}}"
|
||||
environment:
|
||||
- SERVER_PORT={{SERVER_PORT}}
|
||||
- DB_URL={{DB_URL}}
|
||||
- DB_USERNAME={{DB_USERNAME}}
|
||||
- DB_PASSWORD={{DB_PASSWORD}}
|
||||
- REDIS_HOST={{REDIS_HOST}}
|
||||
- REDIS_PORT={{REDIS_PORT}}
|
||||
- REDIS_DATABASE={{REDIS_DATABASE}}
|
||||
- REDIS_PASSWORD={{REDIS_PASSWORD}}
|
||||
- REDIS_TIMEOUT={{REDIS_TIMEOUT}}
|
||||
- TZ={{TZ}}
|
||||
volumes:
|
||||
- ./data/logs:/ruoyi/server/logs
|
||||
restart: always
|
||||
depends_on:
|
||||
- mysql
|
||||
- redis
|
||||
- weaviate
|
||||
networks:
|
||||
- ruoyi-net
|
||||
|
||||
ruoyi-admin:
|
||||
image: ruoyi-ai-admin:latest
|
||||
container_name: ruoyi-ai-admin
|
||||
ports:
|
||||
- "{{ADMIN_PORT}}:80"
|
||||
restart: always
|
||||
depends_on:
|
||||
- ruoyi-backend
|
||||
networks:
|
||||
- ruoyi-net
|
||||
|
||||
ruoyi-web:
|
||||
image: ruoyi-ai-web:latest
|
||||
container_name: ruoyi-ai-web
|
||||
ports:
|
||||
- "{{WEB_PORT}}:80"
|
||||
restart: always
|
||||
depends_on:
|
||||
- ruoyi-backend
|
||||
networks:
|
||||
- ruoyi-net
|
||||
|
||||
networks:
|
||||
ruoyi-net:
|
||||
driver: bridge
|
||||
@@ -0,0 +1,22 @@
|
||||
server {
|
||||
listen 80;
|
||||
server_name localhost;
|
||||
|
||||
location / {
|
||||
root /usr/share/nginx/html;
|
||||
index index.html index.htm;
|
||||
try_files $uri $uri/ /index.html;
|
||||
}
|
||||
|
||||
location /prod-api/ {
|
||||
proxy_pass http://{{BACKEND_HOST}}:{{SERVER_PORT}}/;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
}
|
||||
|
||||
error_page 500 502 503 504 /50x.html;
|
||||
location = /50x.html {
|
||||
root /usr/share/nginx/html;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
server {
|
||||
listen 80;
|
||||
server_name localhost;
|
||||
|
||||
location / {
|
||||
root /usr/share/nginx/html;
|
||||
index index.html index.htm;
|
||||
try_files $uri $uri/ /index.html;
|
||||
}
|
||||
|
||||
location /api/ {
|
||||
proxy_pass http://{{BACKEND_HOST}}:{{SERVER_PORT}}/;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
}
|
||||
|
||||
error_page 500 502 503 504 /50x.html;
|
||||
location = /50x.html {
|
||||
root /usr/share/nginx/html;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user