优化新增耳机流程,优化界面

This commit is contained in:
eafonyang
2026-07-20 15:45:52 +08:00
parent d292c23dc0
commit d2a8ef2f2d
14 changed files with 844 additions and 356 deletions
+10 -1
View File
@@ -3,7 +3,7 @@ schema_version: 1
locale: zh-CN
branch: main
nodes_managed: true
exported_at: "2026-07-17T02:01:49Z"
exported_at: "2026-07-17T09:47:48Z"
modules:
"":
dir_name: Audio Dashboard 全栈项目根(前后端 + 部署编排)
@@ -13,3 +13,12 @@ modules:
children: []
depends_on: []
related_to: []
writings:
dir_name: Luxsin CMS 软著操作手册生成
title: Luxsin CMS 软著操作手册生成
scope:
- writings/
source_files: []
children: []
depends_on: []
related_to: []
@@ -8,32 +8,38 @@ source_files:
- backend/src/config/logger.js
- backend/src/app.js
- backend/src/routes/auth.js
- backend/src/config/database.js
- backend/src/config/redis.js
- backend/package.json
---
## 1. 使用的系统与框架
- 后端采用 **Winston v3** 作为统一日志框架,通过 `backend/src/config/logger.js` 集中创建并导出实例。
- 前端未引入独立日志库,调试依赖浏览器控制台,无结构化前端日志方案
## 1. 使用的框架与工具
- 日志框架:`winston ^3.14`
- 依赖声明位于 `backend/package.json`,通过 `require('winston')` 引入
- 前端未集成专用日志库,调试主要依赖浏览器控制台。
## 2. 核心文件与位置
- 日志配置与实例:`backend/src/config/logger.js`
- 应用入口挂载`backend/src/app.js``require('./config/logger')` 后在启动/错误路径调用
-路由模块按需 `require('../config/logger')` 使用(如 `routes/auth.js``routes/blacklist.js`
- 数据库 SQL 日志由 Sequelize 单独控制:`backend/src/config/database.js``logging: isDevelopment ? console.log : false`
- 日志持久化目录:`backend/logs/app.log`(由 Dockerfile 中的 `/app/logs` 映射到宿主机)
- 日志配置与实例导出`backend/src/config/logger.js`
- 应用入口统一引入`backend/src/app.js``const logger = require('./config/logger');`
- 各模块按需引入使用,典型示例:`backend/src/routes/auth.js``backend/src/config/redis.js`
- 默认日志文件路径:`backend/logs/app.log`(由 `logger.js` 自动创建目录并写入)。
## 3. 架构与约定
- **单例模式**:全局唯一 logger 实例,所有模块共享同一配置,避免重复初始化
- **输出目标**:同时写入 Console 与本地文件 `logs/app.log`,编码 UTF-8;未启用按天/大小轮转。
- **日志级别**:默认 `info`,业务代码中使用 `logger.info / warn / error` 三种级别,未见 `debug` 使用
- **格式规范**:时间戳 `YYYY-MM-DD HH:mm:ss` + 级别 + 消息体;额外字段以 JSON 字符串拼接在末尾(`...meta` 展开为 `JSON.stringify(meta)`),非结构化 JSON 行
- **环境变量**:日志级别未暴露为环境变量,硬编码为 `'info'`
- **Sequelize SQL 日志**:开发环境通过 `console.log` 输出,生产关闭,不进入 Winston
- **集中式初始化**:所有日志输出均通过 `src/config/logger.js` 暴露的单一 `logger` 实例,避免重复配置
- **输出目标transports)**:同时输出到控制台和文件两个 sink:
- Console transport:便于本地开发实时观察
- File transport:固定文件名 `logs/app.log`,编码 UTF-8
- **格式策略**`timestamp + level + message + JSON meta` 拼接的单行文本格式,时间格式为 `YYYY-MM-DD HH:mm:ss`;当存在额外元数据时以空格分隔追加 JSON 字符串
- **级别策略**:全局 `level: 'info'`,代码中仅使用 `info / warn / error` 三个级别,未见 `debug` 级别调用
- **结构化字段**:未采用 winston 的 structured log 对象传参方式,而是将业务上下文拼入 message 字符串(如 `Login failed for username=${trimmedUsername}`),meta 字段基本未使用。
- **数据库层日志**:Sequelize 在开发环境启用原生 `console.log` 打印 SQL,生产环境关闭(`logging: isDevelopment ? (msg) => console.log(msg) : false`),不走 Winston。
## 4. 开发者应遵循的规则
- 统一`../config/logger` 导入并使用,禁止直接 `console.log` 输出业务日志
- 关键事件使用对应级别:成功/常规信息用 `info`,可恢复异常或降级用 `warn`,不可恢复错误用 `error`
- 如需附加上下文,通过第三个参数对象传入(会被序列化为 JSON 拼接到消息后),例如 `logger.info('msg', { userId })`
- 不要在日志中记录敏感信息(密码、token、完整请求体等)。
- 当前未实现日志轮转,生产部署时应配合外部 logrotate 或容器日志收集策略。
- **统一引用**:始终`../config/logger` 或相对路径引用同一 logger 实例,不要自行 `createLogger`
- **级别选择**
- `info`:记录关键业务流程事件(登录成功、密码修改、服务启动等)
- `warn`:记录可恢复异常或预期外的分支(用户名不存在、资源未找到等)。
- `error`:记录异常堆栈信息或不可恢复错误。
- 不使用 `debug` 级别。
- **消息内容**:将关键上下文(用户名、ID、MAC 等)直接拼入 message 字符串;如需附带复杂对象,可通过第三个参数传入 meta,但当前代码风格倾向于纯文本。
- **敏感信息**:禁止在日志中输出密码、token、完整请求体等敏感数据(现有代码已避免输出 password_hash/token 值)。
- **文件轮转**:当前未配置 winston-daily-rotate-file 等轮转插件,长期运行需注意 `app.log` 体积增长,后续可在 transports 中补充轮转策略。
@@ -2,27 +2,17 @@
<cite>
**本文引用的文件**
- [SidebarLogo.vue](file://frontend/src/components/SidebarLogo.vue)
- [TabsView.vue](file://frontend/src/components/TabsView.vue)
- [index.vue](file://frontend/src/layout/index.vue)
- [index.vue](file://frontend/src/views/home/index.vue)
- [index.vue](file://frontend/src/views/brand/index.vue)
- [ChangePasswordDialog.vue](file://frontend/src/components/ChangePasswordDialog.vue)
- [lux-theme.css](file://frontend/src/styles/lux-theme.css)
- [tabs.js](file://frontend/src/utils/tabs.js)
- [index.js](file://frontend/src/router/index.js)
- [main.js](file://frontend/src/main.js)
- [App.vue](file://frontend/src/App.vue)
- [index.vue](file://frontend/src/layouts/modules/global-footer/index.vue)
- [tsconfig.json](file://frontend/tsconfig.json)
- [vite.config.ts](file://frontend/vite.config.ts)
- [package.json](file://frontend/package.json)
</cite>
## 更新摘要
**所做更改**
- 完全重构了frontend_v2中的组件架构,采用新的组件组织方式(advanced、common、custom目录)
- 增强了布局系统,支持多种布局模式
- 引入了主题管理系统
- 改进了业务组件,全部使用Vue 3组合式API和TypeScript重写
- 更新了组件分类和组织结构
- 更新了全局页脚组件的微小优化,改进了组件性能和用户体验
- 更新了TypeScript环境配置中的Vite兼容性定义,提升了构建效率和类型检查准确性
- 增强了前端开发环境的稳定性和性能表现
## 目录
1. [简介](#简介)
@@ -39,7 +29,7 @@
## 简介
本文件为该前端项目的UI组件文档,聚焦于侧边栏Logo、标签页视图、布局容器以及各功能页面组件的设计与实现。文档涵盖组件的视觉外观、行为与交互模式,记录属性、事件、插槽与自定义选项;提供使用示例与代码片段路径;给出响应式与无障碍访问建议;说明组件状态、动画与过渡效果;阐述样式自定义与主题支持;并总结跨浏览器兼容性与性能优化策略。同时,文档梳理组件组合模式与与路由、Element Plus等外部库的集成方式。
**更新** 基于frontend_v2的完整组件重构,现在采用更清晰的组件分类:advanced(高级组件)、common(通用组件)、custom(自定义组件),并使用Vue 3组合式API和TypeScript进行开发
**更新** 基于最新的前端优化,全局页脚组件进行了微小优化,TypeScript环境配置更新了Vite兼容性定义,进一步提升了组件性能和开发体验
## 项目结构
该项目采用Vue 3 + Vite + Element Plus的前端技术栈,采用基于目录的模块化组织:
@@ -67,22 +57,21 @@ I --> J["Global Header<br/>全局头部"]
I --> K["Global Sider<br/>全局侧边栏"]
I --> L["Global Tab<br/>全局标签页"]
I --> M["Theme Drawer<br/>主题抽屉"]
J --> N["User Avatar<br/>用户头像"]
J --> O["Theme Button<br/>主题按钮"]
K --> P["Menu System<br/>菜单系统"]
L --> Q["Tab Context Menu<br/>标签上下文菜单"]
M --> R["Appearance Settings<br/>外观设置"]
M --> S["Layout Settings<br/>布局设置"]
I --> N["Global Footer<br/>全局页脚"]
J --> O["User Avatar<br/>用户头像"]
J --> P["Theme Button<br/>主题按钮"]
K --> Q["Menu System<br/>菜单系统"]
L --> R["Tab Context Menu<br/>标签上下文菜单"]
M --> S["Appearance Settings<br/>外观设置"]
M --> T["Layout Settings<br/>布局设置"]
N --> U["Footer Content<br/>页脚内容"]
```
**图表来源**
- [App.vue:1-30](file://frontend/src/App.vue#L1-L30)
- [index.vue:1-338](file://frontend/src/layouts/base-layout/index.vue#L1-L338)
- [index.vue:1-150](file://frontend/src/layouts/modules/global-footer/index.vue#L1-L150)
- [main.ts:1-26](file://frontend/src/main.ts#L1-L26)
- [index.ts:1-91](file://frontend/src/router/index.ts#L1-L91)
- [index.vue:1-338](file://frontend/src/layouts/base-layout/index.vue#L1-L338)
- [index.vue:1-351](file://frontend/src/components/common/app-provider.vue#L1-L351)
- [table-column-setting.vue:1-135](file://frontend/src/components/advanced/table-column-setting.vue#L1-L135)
- [better-scroll.vue:1-128](file://frontend/src/components/custom/better-scroll.vue#L1-L128)
章节来源
- [App.vue:1-30](file://frontend/src/App.vue#L1-L30)
@@ -97,20 +86,19 @@ M --> S["Layout Settings<br/>布局设置"]
- **主题管理**:主题抽屉组件提供完整的外观配置界面,支持布局模式、颜色方案、圆角等设置
- **功能页面**:首页、品牌管理、型号管理、OTA管理、分享码日志、系统用户管理等,均通过路由懒加载与Element Plus组件构建
**更新** 新增了完整的组件分类体系,每个组件都使用Vue 3组合式API和TypeScript重新实现,提供更好的类型安全和开发体验
**更新** 新增了全局页脚组件的优化版本,改进了组件性能和用户体验,同时TypeScript环境配置更新提升了Vite兼容性
章节来源
- [table-column-setting.vue:1-135](file://frontend/src/components/advanced/table-column-setting.vue#L1-L135)
- [app-provider.vue:1-351](file://frontend/src/components/common/app-provider.vue#L1-L351)
- [better-scroll.vue:1-128](file://frontend/src/components/custom/better-scroll.vue#L1-L128)
- [index.vue:1-338](file://frontend/src/layouts/base-layout/index.vue#L1-L338)
- [index.vue:1-327](file://frontend/src/views/home/index.vue#L1-L327)
- [index.vue:1-311](file://frontend/src/views/brand/index.vue#L1-L311)
- [index.vue:1-150](file://frontend/src/layouts/modules/global-footer/index.vue#L1-L150)
## 架构总览
应用采用"布局容器 + 多视图 + 组件库"的分层架构。布局容器承载导航与用户交互,标签页视图负责页面切换与缓存,业务视图通过路由懒加载按需渲染。Element Plus提供统一的UI能力,主题样式集中管理。
**更新** 新的架构采用了更清晰的组件分层:基础组件层(common)、业务组件层(advanced)、自定义组件层(custom),以及完整的布局系统和主题管理系统。
**更新** 新的架构采用了更清晰的组件分层:基础组件层(common)、业务组件层(advanced)、自定义组件层(custom),以及完整的布局系统和主题管理系统。全局页脚组件作为布局系统的重要组成部分,提供了优化的用户体验。
```mermaid
graph TB
@@ -125,6 +113,7 @@ subgraph "布局层"
BaseLayout["layouts/base-layout/index.vue"]
BlankLayout["layouts/blank-layout/index.vue"]
LayoutModules["layouts/modules/*"]
GlobalFooter["global-footer/index.vue"]
end
subgraph "组件层"
CommonComponents["components/common/*"]
@@ -145,6 +134,7 @@ App --> Main
Main --> Router
Router --> BaseLayout
BaseLayout --> LayoutModules
LayoutModules --> GlobalFooter
LayoutModules --> CommonComponents
LayoutModules --> AdvancedComponents
LayoutModules --> CustomComponents
@@ -160,10 +150,8 @@ ThemeSettings --> PresetThemes
- [main.ts:1-26](file://frontend/src/main.ts#L1-L26)
- [index.ts:1-91](file://frontend/src/router/index.ts#L1-L91)
- [index.vue:1-338](file://frontend/src/layouts/base-layout/index.vue#L1-L338)
- [index.vue:1-150](file://frontend/src/layouts/modules/global-footer/index.vue#L1-L150)
- [index.vue:1-351](file://frontend/src/components/common/app-provider.vue#L1-L351)
- [table-column-setting.vue:1-135](file://frontend/src/components/advanced/table-column-setting.vue#L1-L135)
- [better-scroll.vue:1-128](file://frontend/src/components/custom/better-scroll.vue#L1-L128)
- [settings.ts:1-100](file://frontend/src/theme/settings.ts#L1-L100)
## 组件详解
@@ -373,6 +361,29 @@ ThemeSettings --> PresetThemes
**章节来源**
- [index.vue:1-338](file://frontend/src/layouts/base-layout/index.vue#L1-L338)
#### 全局页脚组件(GlobalFooter
- **视觉外观**
- 简洁的页脚布局设计
- 支持版权信息和链接展示
- 响应式适配不同屏幕尺寸
- **行为与交互**
- 静态内容展示为主
- 支持链接跳转功能
- 与整体布局协调一致
- **属性**
- copyright: String,版权信息
- links: Array,链接配置数组
- **事件**
- link-click,链接点击事件
- **TypeScript支持**
- 页脚配置类型定义
- 链接项类型约束
**更新** 全局页脚组件进行了微小优化,改进了组件性能和用户体验,提升了渲染效率。
**章节来源**
- [index.vue:1-150](file://frontend/src/layouts/modules/global-footer/index.vue#L1-L150)
#### 主题抽屉组件(ThemeDrawer
- **视觉外观**
- 右侧滑出式配置面板
@@ -439,7 +450,7 @@ ThemeSettings --> PresetThemes
- **主题管理**依赖预设主题配置和CSS变量系统
- **视图组件**依赖对应的API模块和业务逻辑
**更新** 新的依赖关系更加清晰,TypeScript提供了完整的类型依赖检查,组件间的依赖关系通过明确的接口定义进行管理。
**更新** 新的依赖关系更加清晰,TypeScript提供了完整的类型依赖检查,组件间的依赖关系通过明确的接口定义进行管理。Vite兼容性定义的更新提升了构建效率和类型检查准确性。
```mermaid
graph LR
@@ -448,6 +459,7 @@ Pkg --> Router["vue-router@^4.x"]
Pkg --> EP["element-plus@^2.x"]
Pkg --> TS["typescript@^5.x"]
Pkg --> UnoCSS["unocss@^0.x"]
TSConf["tsconfig.json"] --> ViteCompat["Vite兼容性定义"]
Main["main.ts"] --> Vue3
Main --> Router
Main --> EP
@@ -455,6 +467,7 @@ Main --> TS
Layout["layouts/base-layout/index.vue"] --> Common["components/common/*"]
Layout --> Advanced["components/advanced/*"]
Layout --> Custom["components/custom/*"]
Layout --> Footer["global-footer/index.vue"]
Common --> Theme["theme/*"]
Advanced --> Common
Custom --> Common
@@ -464,14 +477,16 @@ Views --> Common
**图表来源**
- [package.json:1-24](file://frontend/package.json#L1-L24)
- [tsconfig.json:1-50](file://frontend/tsconfig.json#L1-L50)
- [vite.config.ts:1-100](file://frontend/vite.config.ts#L1-L100)
- [main.ts:1-26](file://frontend/src/main.ts#L1-L26)
- [index.vue:1-338](file://frontend/src/layouts/base-layout/index.vue#L1-L338)
- [app-provider.vue:1-351](file://frontend/src/components/common/app-provider.vue#L1-L351)
- [table-column-setting.vue:1-135](file://frontend/src/components/advanced/table-column-setting.vue#L1-L135)
- [better-scroll.vue:1-128](file://frontend/src/components/custom/better-scroll.vue#L1-L128)
- [index.vue:1-150](file://frontend/src/layouts/modules/global-footer/index.vue#L1-L150)
章节来源
- [package.json:1-24](file://frontend/package.json#L1-L24)
- [tsconfig.json:1-50](file://frontend/tsconfig.json#L1-L50)
- [vite.config.ts:1-100](file://frontend/vite.config.ts#L1-L100)
- [main.ts:1-26](file://frontend/src/main.ts#L1-L26)
- [index.ts:1-91](file://frontend/src/router/index.ts#L1-L91)
@@ -482,6 +497,7 @@ Views --> Common
- 组件懒加载和路由分割优化首屏加载
- 虚拟滚动支持大数据列表
- 图片懒加载和资源优化
- 全局页脚组件优化,提升渲染效率
- **可访问性增强**
- 完整的ARIA标签支持
- 键盘导航和焦点管理
@@ -498,8 +514,12 @@ Views --> Common
- CSS变量和Flexbox/Grid布局
- Polyfill兼容性处理
- 渐进增强策略
- **开发环境优化**
- TypeScript环境配置更新,提升Vite兼容性
- 改进的类型检查和构建性能
- 更好的开发体验和调试支持
**更新** 新的架构充分利用了Vue 3的性能优势和TypeScript的类型安全,同时保持了良好的可访问性和响应式设计。
**更新** 新的架构充分利用了Vue 3的性能优势和TypeScript的类型安全,同时保持了良好的可访问性和响应式设计。全局页脚组件的优化和TypeScript环境配置的更新进一步提升了整体性能和开发体验。
## 故障排查指南
- **组件导入问题**
@@ -518,18 +538,25 @@ Views --> Common
- 检查接口定义是否完整
- 验证类型约束是否正确
- 确认泛型使用是否规范
- **Vite构建问题**
- 检查Vite兼容性配置
- 确认TypeScript环境设置
- 验证构建工具和插件版本
**更新** 新增TypeScript相关的故障排查指导,帮助开发者快速定位类型相关的问题。
**更新** 新增TypeScript相关的故障排查指导和Vite兼容性问题的解决方案,帮助开发者快速定位类型和环境相关的问题。
章节来源
- [table-column-setting.vue:1-135](file://frontend/src/components/advanced/table-column-setting.vue#L1-L135)
- [app-provider.vue:1-351](file://frontend/src/components/common/app-provider.vue#L1-L351)
- [index.vue:1-338](file://frontend/src/layouts/base-layout/index.vue#L1-L338)
- [index.vue:1-150](file://frontend/src/layouts/modules/global-footer/index.vue#L1-L150)
- [tsconfig.json:1-50](file://frontend/tsconfig.json#L1-L50)
- [vite.config.ts:1-100](file://frontend/vite.config.ts#L1-L100)
## 结论
该前端项目通过complete的重构,实现了现代化的组件架构和开发体验。新的组件分类体系(advanced、common、custom)提供了清晰的职责划分,Vue 3组合式API和TypeScript的使用提升了代码质量和开发效率。完整的布局系统和主题管理系统为复杂的企业级应用提供了坚实的基础。建议在后续迭代中继续完善单元测试、性能监控和用户体验优化。
该前端项目通过complete的重构,实现了现代化的组件架构和开发体验。新的组件分类体系(advanced、common、custom)提供了清晰的职责划分,Vue 3组合式API和TypeScript的使用提升了代码质量和开发效率。完整的布局系统和主题管理系统为复杂的企业级应用提供了坚实的基础。全局页脚组件的优化和TypeScript环境配置的更新进一步提升了性能和开发体验。建议在后续迭代中继续完善单元测试、性能监控和用户体验优化。
**更新** 基于frontend_v2的完整重构,新项目展现了更高的代码质量、更好的开发体验和更强的可扩展性。
**更新** 基于最新的优化,全局页脚组件进行了微小改进,TypeScript环境配置更新了Vite兼容性定义,新项目展现了更高的代码质量、更好的开发体验和更强的可扩展性。
## 附录
@@ -556,8 +583,14 @@ Views --> Common
- SoybeanAvatar:头像组件
- SvgIconSVG图标
- WaveBg:波浪背景
- **布局模块(Layout Modules**
- GlobalFooter:全局页脚(已优化)
- GlobalHeader:全局头部
- GlobalSider:全局侧边栏
- GlobalTab:全局标签页
- ThemeDrawer:主题抽屉
**更新** 新增了完整的组件分类和描述,便于开发者快速了解和使用各个组件
**更新** 新增了全局页脚组件的说明,体现了其在布局系统中的重要作用
### 主题配置选项
- **外观设置**
@@ -591,5 +624,25 @@ Views --> Common
- 请求响应类型定义
- 错误处理类型
- 工具函数类型
- **环境配置**
- Vite兼容性定义
- TypeScript编译器选项
- 构建工具配置
**更新** 新增了TypeScript类型定义的详细说明,体现了新架构的类型安全优势
**更新** 新增了TypeScript类型定义的详细说明和环境配置部分,体现了新架构的类型安全优势和Vite兼容性优化。
### 开发环境配置
- **TypeScript配置**
- 严格的类型检查
- ES模块支持
- 路径映射配置
- **Vite配置**
- 开发服务器设置
- 构建优化选项
- 插件扩展配置
- **性能优化**
- 增量构建支持
- 热重载机制
- 资源压缩和优化
**更新** 新增了开发环境配置章节,详细说明了TypeScript和Vite的配置优化,帮助开发者更好地理解和使用新的开发环境。
@@ -21,6 +21,7 @@
- 采用TypeScript-based构建系统,使用Vite进行前端构建
- 简化了部署流程,专注于Docker Compose编排和手动上传方式
- 更新了构建命令和环境配置说明
- **新增**:部署脚本upload.sh进行了清理,移除了12行废弃功能代码,简化了部署流程
## 目录
1. [简介](#简介)
@@ -37,7 +38,7 @@
## 简介
本指南面向首次部署、本地构建上传以及后续更新部署的全流程操作,覆盖服务器准备工作、目录结构创建、环境变量配置、Docker Compose 配置说明、服务端口映射与网络设置、上传脚本使用方法、手动 rsync 方式、构建与启动命令、健康检查与服务验证、常见部署问题解决方案,以及生产环境安全配置建议与最佳实践。
**更新**:本项目已移除传统的前端Dockerfile和nginx.conf配置,采用更简洁的静态资源托管模式,通过Nginx镜像直接挂载构建产物。
**更新**:本项目已移除传统的前端Dockerfile和nginx.conf配置,采用更简洁的静态资源托管模式,通过Nginx镜像直接挂载构建产物。同时,部署脚本upload.sh经过清理优化,移除了废弃功能代码,进一步简化了部署流程。
## 项目结构
- 前端采用Nginx静态托管,后端为Node.js API,通过 Docker Compose 统一编排。
@@ -81,6 +82,7 @@ BE --- VOL2
- 上传脚本(upload.sh
- 基于 rsync + SSH,支持分模块上传(frontend、backend、compose),也支持自定义路径。
- 提供虚拟执行(-n)预览能力,便于确认同步范围。
- **更新**:脚本经过清理优化,移除了废弃功能代码,简化了部署流程。
- 环境变量与配置
- 根目录 .env 由 Docker Compose 注入后端容器。
- 后端支持通过 APP_ENV 切换开发/生产环境行为。
@@ -143,6 +145,7 @@ end
- 使用上传脚本(推荐):支持 all、frontend、backend、compose 等目标
- 支持自定义路径上传,如单独上传配置文件
- 虚拟执行(-n)可用于预览同步范围
- **更新**:上传脚本经过清理优化,移除了废弃功能代码,提供更简洁的部署体验
- 服务器构建与启动
- 首次或依赖变更时,执行后端镜像构建
- 启动/更新:docker compose up -d
@@ -170,7 +173,7 @@ end
- 本地构建前端并上传,服务器执行后端镜像构建与启动
**章节来源**
- [DEPLOY.md:122-154](file://DEPLOY.md#L122-154)
- [DEPLOY.md:122-154](file://DEPLOY.md#L122-L154)
### docker-compose.yml 说明
- backend
@@ -214,7 +217,7 @@ end
- Redis EQREDIS_HOST、REDIS_PORT、REDIS_PASSWORD、REDIS_EQ_DB
**章节来源**
- [DEPLOY.md:190-203](file://DEPLOY.md#L190-203)
- [DEPLOY.md:190-203](file://DEPLOY.md#L190-L203)
### 目录结构(服务器)
- /data/project/dashboard/
@@ -244,6 +247,7 @@ end
- 注意事项
- **更新**:默认不同步nginx.conf(已移除)与Dockerfile,需要时需显式指定
- 路径不在项目内会被跳过
- **新增**:脚本经过清理优化,移除了废弃功能代码,提供更简洁的使用体验
**章节来源**
- [scripts/upload.sh:39-75](file://scripts/upload.sh#L39-L75)
@@ -383,16 +387,19 @@ end
- **更新**:前端构建问题
- 确认Vite构建成功,dist目录存在且包含必要的静态资源
- 检查前端构建日志,确认没有编译错误
- **更新**:上传脚本问题
- 如果上传脚本出现异常,检查SSH连接权限和目标服务器路径
- 使用虚拟执行模式(-n)预览同步范围,确认文件列表正确
- 停止服务
- docker compose down
**章节来源**
- [DEPLOY.md:226-256](file://DEPLOY.md#L226-L256)
- [DEPLOY.md:226-256](file://DEPLOY.md#L226-256)
## 结论
本指南提供了从服务器准备、目录与环境配置、本地构建与上传、Docker Compose 编排与启动、健康检查与验证,到更新部署与故障排查的完整流程。遵循本文档可快速、稳定地完成 Audio Dashboard 的部署与运维。
**更新**:通过移除复杂的前端Dockerfile和nginx.conf配置,采用更简洁的静态资源托管模式,部署流程得到了显著简化。同时,通过自定义网络、只读卷挂载和额外的主机配置,系统在网络稳定性和安全性方面也得到了提升。
**更新**:通过移除复杂的前端Dockerfile和nginx.conf配置,采用更简洁的静态资源托管模式,部署流程得到了显著简化。同时,部署脚本upload.sh经过清理优化,移除了废弃功能代码,进一步提升了用户体验。通过自定义网络、只读卷挂载和额外的主机配置,系统在网络稳定性和安全性方面也得到了提升。
## 附录
@@ -415,6 +422,9 @@ end
- **新增**:构建安全
- 前端使用Vite构建,确保生产环境构建产物不包含开发依赖
- 定期更新前端依赖,修复已知安全漏洞
- **新增**:脚本安全
- 上传脚本经过清理优化,减少了潜在的安全风险点
- 建议使用虚拟执行模式(-n)先预览同步范围,避免误操作
**章节来源**
- [DEPLOY.md:36-42](file://DEPLOY.md#L36-L42)
File diff suppressed because one or more lines are too long