feat: add docs pages
This commit is contained in:
@@ -1,170 +0,0 @@
|
||||
# 配置说明
|
||||
|
||||
## 完整配置文件
|
||||
|
||||
```ini
|
||||
[app]
|
||||
JwtSecret = message-nest
|
||||
; 暂时无用
|
||||
RuntimeRootPath = runtime/
|
||||
LogLevel = INFO
|
||||
|
||||
[server]
|
||||
; debug or release
|
||||
; debug模式下会自动添加跨域headers
|
||||
RunMode = release
|
||||
HttpPort = 8000
|
||||
ReadTimeout = 60
|
||||
WriteTimeout = 60
|
||||
; use embed html static file
|
||||
; 是否使用embed打包的静态资源
|
||||
; 如果运行release打包后的应用,请注释这个设置。
|
||||
; 如果取消这个注释,只会单独运行api服务,前端页面需要到web目录手动npm run dev, 运行前端服务
|
||||
; EmbedHtml = disable
|
||||
|
||||
[database]
|
||||
; 配置使用什么数据库,支持:mysql、sqlite、tidb
|
||||
Type = mysql
|
||||
User = root
|
||||
Password = password
|
||||
Host = 123.1.1.1
|
||||
Name = db_name
|
||||
Port = 3306
|
||||
; -- 其他配置
|
||||
; 表前缀
|
||||
TablePrefix = message_
|
||||
; -- 是否打开sql打印
|
||||
; SqlDebug = enable
|
||||
; 数据库连接是否开启ssl, value: [false | true]
|
||||
Ssl = true
|
||||
```
|
||||
|
||||
## 配置项说明
|
||||
|
||||
### [app] 应用配置
|
||||
|
||||
| 配置项 | 说明 | 默认值 |
|
||||
|--------|------|--------|
|
||||
| JwtSecret | JWT密钥,用于token生成 | message-nest |
|
||||
| RuntimeRootPath | 运行时根路径(暂时无用) | runtime/ |
|
||||
| LogLevel | 日志级别:DEBUG/INFO/ERROR | INFO |
|
||||
|
||||
### [server] 服务器配置
|
||||
|
||||
| 配置项 | 说明 | 默认值 |
|
||||
|--------|------|--------|
|
||||
| RunMode | 运行模式:debug/release,debug模式会自动添加跨域 | release |
|
||||
| HttpPort | HTTP服务端口 | 8000 |
|
||||
| ReadTimeout | 读取超时时间(秒) | 60 |
|
||||
| WriteTimeout | 写入超时时间(秒) | 60 |
|
||||
| EmbedHtml | 是否使用embed打包的静态资源,注释则启用单应用模式 | - |
|
||||
|
||||
### [database] 数据库配置
|
||||
|
||||
| 配置项 | 说明 | 默认值 |
|
||||
|--------|------|--------|
|
||||
| Type | 数据库类型:mysql/sqlite/tidb | mysql |
|
||||
| User | 数据库用户名 | - |
|
||||
| Password | 数据库密码 | - |
|
||||
| Host | 数据库主机地址 | - |
|
||||
| Port | 数据库端口 | 3306 |
|
||||
| Name | 数据库名称 | - |
|
||||
| TablePrefix | 数据表前缀 | message_ |
|
||||
| SqlDebug | 是否打印SQL,设置enable开启 | - |
|
||||
| Ssl | 数据库连接是否开启SSL | false |
|
||||
|
||||
## Docker 环境变量
|
||||
|
||||
使用Docker部署时,可以通过环境变量进行配置:
|
||||
|
||||
| 变量 | 说明 |
|
||||
|------|------|
|
||||
| JWT_SECRET | jwt秘钥,可选,默认为message-nest |
|
||||
| LOG_LEVEL | 日志等级,可选,默认为INFO,DEBUG/INFO/ERROR |
|
||||
| RUN_MODE | 运行模式,可选,默认release,为debug将自动添加跨域 |
|
||||
| DB_TYPE | 数据库类型,sqlite/mysql。默认为sqlite,存储路径为conf/database.db |
|
||||
| MYSQL_HOST | mysql-host,DB_TYPE=mysql必填 |
|
||||
| MYSQL_PORT | mysql端口,DB_TYPE=mysql必填 |
|
||||
| MYSQL_USER | mysql用户名,DB_TYPE=mysql必填 |
|
||||
| MYSQL_PASSWORD | mysql数据库密码,DB_TYPE=mysql必填 |
|
||||
| MYSQL_DB | mysql数据库名字,DB_TYPE=mysql必填 |
|
||||
| MYSQL_TABLE_PREFIX | mysql数据表前缀,DB_TYPE=mysql必填 |
|
||||
| SSL | 是否开启SSL |
|
||||
| SQL_DEBUG | 是否打印SQL,可选,默认关,设置enable为开启 |
|
||||
|
||||
## 配置示例
|
||||
|
||||
### 单应用模式(推荐)
|
||||
|
||||
```ini
|
||||
[app]
|
||||
JwtSecret = message-nest
|
||||
LogLevel = INFO
|
||||
|
||||
[server]
|
||||
RunMode = release
|
||||
HttpPort = 8000
|
||||
ReadTimeout = 60
|
||||
WriteTimeout = 60
|
||||
; 注释EmbedHtml,启用单应用模式
|
||||
; EmbedHtml = disable
|
||||
|
||||
[database]
|
||||
; 关闭SQL打印
|
||||
; SqlDebug = enable
|
||||
|
||||
Type = mysql
|
||||
User = root
|
||||
Password = Aa123456
|
||||
Host = vm.server
|
||||
Port = 3308
|
||||
Name = yourDbName
|
||||
TablePrefix = message_
|
||||
```
|
||||
|
||||
### 开发调试模式
|
||||
|
||||
```ini
|
||||
[app]
|
||||
JwtSecret = message-nest
|
||||
LogLevel = INFO
|
||||
|
||||
[server]
|
||||
; RunMode务必设置成debug,会自动添加跨域
|
||||
RunMode = debug
|
||||
HttpPort = 8000
|
||||
ReadTimeout = 60
|
||||
WriteTimeout = 60
|
||||
; 取消EmbedHtml的注释(启用前后端分离),然后到web目录下面,npm run dev启动前端页面
|
||||
EmbedHtml = disable
|
||||
|
||||
[database]
|
||||
; 开启SQL打印
|
||||
SqlDebug = enable
|
||||
|
||||
Type = mysql
|
||||
User = root
|
||||
Password = Aa123456
|
||||
Host = vm.server
|
||||
Port = 3308
|
||||
Name = yourDbName
|
||||
TablePrefix = message_
|
||||
```
|
||||
|
||||
### SQLite 配置
|
||||
|
||||
```ini
|
||||
[app]
|
||||
JwtSecret = message-nest
|
||||
LogLevel = INFO
|
||||
|
||||
[server]
|
||||
RunMode = release
|
||||
HttpPort = 8000
|
||||
ReadTimeout = 60
|
||||
WriteTimeout = 60
|
||||
|
||||
[database]
|
||||
Type = sqlite
|
||||
TablePrefix = message_
|
||||
```
|
||||
@@ -1,98 +0,0 @@
|
||||
# EmbedHtml 配置说明
|
||||
|
||||
## 什么是 EmbedHtml?
|
||||
|
||||
这个配置可以理解为单应用模式(或者前后端分离)的开关。
|
||||
|
||||
## 配置方式
|
||||
|
||||
### 方式一:单应用模式(推荐)
|
||||
|
||||
**注释 EmbedHtml 配置**
|
||||
|
||||
```ini
|
||||
[server]
|
||||
RunMode = release
|
||||
HttpPort = 8000
|
||||
ReadTimeout = 60
|
||||
WriteTimeout = 60
|
||||
; 注释EmbedHtml,启用单应用模式
|
||||
; EmbedHtml = disable
|
||||
```
|
||||
|
||||
**说明:**
|
||||
- 启动go服务,会把web/dist目录下文件作为前端静态资源
|
||||
- 如果目录下没有静态资源文件,需要到web目录下,执行 `npm run build` 构建生成
|
||||
- 只需要运行一个服务即可访问完整功能
|
||||
- 适合生产环境部署
|
||||
|
||||
**适用场景:**
|
||||
- 使用 Release 打包的可执行文件
|
||||
- Docker 部署
|
||||
- 生产环境
|
||||
|
||||
### 方式二:前后端分离模式
|
||||
|
||||
**启用 EmbedHtml 配置**
|
||||
|
||||
```ini
|
||||
[server]
|
||||
RunMode = debug
|
||||
HttpPort = 8000
|
||||
ReadTimeout = 60
|
||||
WriteTimeout = 60
|
||||
; 取消注释,启用前后端分离
|
||||
EmbedHtml = disable
|
||||
```
|
||||
|
||||
**说明:**
|
||||
- go服务启动时只会有API服务
|
||||
- 需要到web目录下,执行 `npm run dev` 启动前端项目
|
||||
- 访问前端项目提示的端口服务,一般是 `http://127.0.0.1:5173`
|
||||
- 或者使用 `npm run build`,用Nginx部署前端
|
||||
|
||||
**适用场景:**
|
||||
- 开发调试
|
||||
- 需要修改前端代码
|
||||
- 前后端独立部署
|
||||
|
||||
## 两种方式对比
|
||||
|
||||
| 特性 | 单应用模式 | 前后端分离模式 |
|
||||
|------|-----------|--------------|
|
||||
| 部署复杂度 | 简单,只需一个服务 | 复杂,需要两个服务 |
|
||||
| 开发调试 | 不便,需要重新构建 | 方便,支持热更新 |
|
||||
| 资源占用 | 较少 | 较多 |
|
||||
| 适用环境 | 生产环境 | 开发环境 |
|
||||
| 推荐指数 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ |
|
||||
|
||||
## 推荐方案
|
||||
|
||||
综合考虑下来,推荐直接使用以下方式:
|
||||
|
||||
1. **Release 打包执行文件** - 已内置页面静态资源,开箱即用
|
||||
2. **Docker 环境变量部署** - 配置简单,一键启动
|
||||
|
||||
这两种方式都是单应用模式,只需运行一个服务即可。
|
||||
|
||||
## 常见问题
|
||||
|
||||
### Q: 为什么访问页面显示404?
|
||||
|
||||
A: 检查以下几点:
|
||||
1. 如果是单应用模式,确保 `EmbedHtml` 已注释
|
||||
2. 确保 `web/dist` 目录下有静态资源文件
|
||||
3. 如果没有,执行 `cd web && npm run build` 构建
|
||||
|
||||
### Q: 开发时如何快速调试?
|
||||
|
||||
A:
|
||||
1. 设置 `RunMode = debug`
|
||||
2. 启用 `EmbedHtml = disable`
|
||||
3. 启动后端:`go run main.go`
|
||||
4. 启动前端:`cd web && npm run dev`
|
||||
5. 访问前端提示的URL(通常是 http://127.0.0.1:5173)
|
||||
|
||||
### Q: Docker 部署需要配置 EmbedHtml 吗?
|
||||
|
||||
A: 不需要。Docker 镜像已经内置了前端静态资源,默认就是单应用模式。
|
||||
+1
-15
@@ -1,18 +1,4 @@
|
||||
# 特色功能
|
||||
|
||||
## 核心特性
|
||||
|
||||
### 🔄 整合性
|
||||
|
||||
提供了多种消息推送方式,包括邮件、钉钉、企业微信等,方便你集中管理和定制通知。
|
||||
|
||||
### 🎨 自定义性
|
||||
|
||||
可以根据需求定制消息推送策略,满足不同场景的个性化需求。
|
||||
|
||||
### 🛠 开放性
|
||||
|
||||
易于扩展和集成新的消息通知服务,以适应未来的变化。
|
||||
。
|
||||
|
||||
## 支持的推送方式
|
||||
|
||||
|
||||
Reference in New Issue
Block a user