chroe: update readme.md for deploy
This commit is contained in:
@@ -55,7 +55,7 @@ Message Nest 是一个灵活而强大的消息推送整合平台,旨在简化
|
|||||||

|

|
||||||
|
|
||||||
## 使用方法 🚀
|
## 使用方法 🚀
|
||||||
#### 1.直接运行最新的release打包的可执行文件(推荐)
|
#### 1.直接运行最新的release打包的可执行文件(推荐,不用部署前端页面)
|
||||||
1. 下载最新的系统版本对应的release, 解压
|
1. 下载最新的系统版本对应的release, 解压
|
||||||
2. 新建一个数据库
|
2. 新建一个数据库
|
||||||
3. 重命名conf/app.example.ini为conf/app.ini
|
3. 重命名conf/app.example.ini为conf/app.ini
|
||||||
@@ -79,6 +79,91 @@ Message Nest 是一个灵活而强大的消息推送整合平台,旨在简化
|
|||||||
```
|
```
|
||||||
7. 启动项目,访问8000端口,初始账号为admin,密码为123456
|
7. 启动项目,访问8000端口,初始账号为admin,密码为123456
|
||||||
|
|
||||||
|
#### 2.前后端分离部署(待更新)
|
||||||
|
|
||||||
|
[//]: # (1. 前端项目构建)
|
||||||
|
|
||||||
|
[//]: # (```shell)
|
||||||
|
|
||||||
|
[//]: # (cd web && npm i && npm run build)
|
||||||
|
|
||||||
|
[//]: # (```)
|
||||||
|
|
||||||
|
[//]: # (2. 配置配置文件,参考上面,需要注意将配置中`EmbedHtml = disable`取消注释)
|
||||||
|
|
||||||
|
[//]: # (3. 启动go服务)
|
||||||
|
|
||||||
|
[//]: # (```shell)
|
||||||
|
|
||||||
|
[//]: # (go mod tidy)
|
||||||
|
|
||||||
|
[//]: # (CGO_ENABLED=0 go build -o Message-Nest)
|
||||||
|
|
||||||
|
[//]: # (./Message-Nest)
|
||||||
|
|
||||||
|
[//]: # (```)
|
||||||
|
|
||||||
|
[//]: # (4. 配置Nginx,将静态文件)
|
||||||
|
|
||||||
|
[//]: # (5. 配置Nginx,将后端接口转发)
|
||||||
|
|
||||||
|
#### 3. 开发调试运行
|
||||||
|
1. 重命名conf/app.example.ini为conf/app.ini, 关键配置如下
|
||||||
|
```ini
|
||||||
|
[app]
|
||||||
|
JwtSecret = message-nest
|
||||||
|
LogLevel = INFO
|
||||||
|
|
||||||
|
; 第一次运行务必打开,初始化数据
|
||||||
|
InitData = enable
|
||||||
|
|
||||||
|
[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_
|
||||||
|
|
||||||
|
```
|
||||||
|
2. 运行main.go,服务启动后会运行在8000端口
|
||||||
|
```shell
|
||||||
|
go mod tidy
|
||||||
|
go run main.go
|
||||||
|
```
|
||||||
|
3. 启动前端页面,页面启动后会提示访问url,一般是`http://127.0.0.1:5173`
|
||||||
|
```shell
|
||||||
|
cd web
|
||||||
|
npm i
|
||||||
|
nom run dev
|
||||||
|
```
|
||||||
|
4. 访问`http://127.0.0.1:5173`,进行调试开发,接口会自动转发到go服务`http://localhost:8000`
|
||||||
|
|
||||||
|
|
||||||
|
#### 关于EmbedHtml配置的说明
|
||||||
|
|
||||||
|
这个配置可以理解为单应用模式(或者前后端分离)的开关
|
||||||
|
|
||||||
|
1. 取消这个配置的注释,表示前后端分离,表示go服务启动的时候只会有api服务,需要到web目录下,npm run dev启动前端项目。然后访问前端项目提示的端口服务,一般是127.0.0.1:5173。
|
||||||
|
或者使用npm run build,用Nginx部署前端。
|
||||||
|
|
||||||
|
2. 注释这个配置,表示单应用,启动go服务,会把web/dist目录下文件作为前端静态资源。
|
||||||
|
如果目录下没有静态资源文件,需要到web目录下,npm run build构建生成。
|
||||||
|
|
||||||
|
两种方式各有优缺点,综合考虑下来,推荐直接使用release的打包执行文件,其中已经内置了页面静态资源,只用运行一个服务。
|
||||||
|
|
||||||
|
|
||||||
## 完整配置说明 ⚙️
|
## 完整配置说明 ⚙️
|
||||||
|
|||||||
@@ -45,9 +45,16 @@ func main() {
|
|||||||
MaxHeaderBytes: maxHeaderBytes,
|
MaxHeaderBytes: maxHeaderBytes,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
startInfo := ""
|
||||||
|
if setting.ServerSetting.RunMode == "debug" {
|
||||||
|
startInfo = fmt.Sprintf("run mode: %s, start message server @ http://localhost%s", setting.ServerSetting.RunMode, endPoint)
|
||||||
|
} else {
|
||||||
|
startInfo = fmt.Sprintf("run mode: %s, start message server @ http://0.0.0.0%s", setting.ServerSetting.RunMode, endPoint)
|
||||||
|
}
|
||||||
|
|
||||||
logrus.WithFields(logrus.Fields{
|
logrus.WithFields(logrus.Fields{
|
||||||
"prefix": fmt.Sprintf("[PID:%d]", os.Getpid()),
|
"prefix": fmt.Sprintf("[PID:%d]", os.Getpid()),
|
||||||
}).Infof("start message server @ http://0.0.0.0%s", endPoint)
|
}).Infof(startInfo)
|
||||||
|
|
||||||
err := server.ListenAndServe()
|
err := server.ListenAndServe()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|||||||
@@ -21,3 +21,4 @@ npm run dev
|
|||||||
```sh
|
```sh
|
||||||
npm run build
|
npm run build
|
||||||
```
|
```
|
||||||
|
[README.md](..%2FREADME.md)
|
||||||
Reference in New Issue
Block a user