feat: 添加自动化部署方案(Docker + 远程服务器两套方案)

- 新增 deploy/docker/:Docker 本机模拟部署,含 Dockerfile、docker-compose、deploy.sh 一键脚本
- 新增 deploy/remote/:远程服务器部署,含 SSH 自动上传、重启、回滚脚本
- 新增 deploy/README.md:完整使用手册,含现状分析、落地调整工作清单、命令速查
- 新增 build.sh/start.sh:本地构建和启动脚本(含飞书通知)
- 新增前端 .env.docker 环境配置,API 指向测试服务器
- 前端 package.json 新增 build-docker 命令
- 更新 .gitignore:排除 IDE 配置、SQL 数据、Docker 敏感文件
- 前端 UI 样式优化(多个页面组件)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
xqzp2026
2026-04-15 18:41:15 +09:30
parent d27abbb529
commit 8373460096
71 changed files with 8003 additions and 350 deletions

View File

@@ -0,0 +1,35 @@
server:
port: 8095
redis:
host: 100.93.0.28
port: 6379
password: kaixinjiuhao
timeout: 30000
pool:
max-total: 200
max-wait: -1
max-idle: 8
min-idle: 1
timeout: 30000
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
db1:
url: jdbc:mysql://100.93.0.28:3306/xiaoqu_comples_d?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai&allowMultiQueries=true&allowPublicKeyRetrieval=true
username: root
password: kaixinjiuhao
driver-class-name: com.mysql.cj.jdbc.Driver
db2:
url: jdbc:mysql://100.93.0.28:3306/xiaoqu_intellectual_d?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai&allowMultiQueries=true&allowPublicKeyRetrieval=true
username: root
password: kaixinjiuhao
driver-class-name: com.mysql.cj.jdbc.Driver
xxl:
job:
admin:
addresses: ""
executor:
appname: xiaoqu-intellectual-task

View File

@@ -0,0 +1,35 @@
server:
port: 8097
redis:
host: host.docker.internal
port: 6379
password: kaixinjiuhao
spring:
mqtt:
username: intellectual
password: xiaoqu2022
host-url: tcp://mqtt:1883
client-id: xiaoqu-intellectual-task-docker
timeout: 1000
keepalive: 100
datasource:
type: com.alibaba.druid.pool.DruidDataSource
db1:
url: jdbc:mysql://host.docker.internal:3306/xiaoqu_comples_d?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai&allowMultiQueries=true&allowPublicKeyRetrieval=true
username: root
password: kaixinjiuhao
driver-class-name: com.mysql.cj.jdbc.Driver
db2:
url: jdbc:mysql://host.docker.internal:3306/xiaoqu_intellectual_d?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai&allowMultiQueries=true&allowPublicKeyRetrieval=true
username: root
password: kaixinjiuhao
driver-class-name: com.mysql.cj.jdbc.Driver
xxl:
job:
admin:
addresses: ""
executor:
appname: xiaoqu-intellectual-task

View File

@@ -0,0 +1,28 @@
server {
listen 80;
server_name localhost;
# 静态资源缓存
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff2?|map)$ {
root /usr/share/nginx/html;
expires 7d;
add_header Cache-Control "public, immutable";
}
# 前端 SPA — 静态文件存在则返回,不存在则转发到后端
location / {
root /usr/share/nginx/html;
index index.html;
try_files $uri $uri/ @backend;
}
# 后端接口反代到本机 Docker 内的 Web 容器
location @backend {
proxy_pass http://web:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_connect_timeout 60s;
proxy_read_timeout 120s;
}
}