39 lines
2.0 KiB
Markdown
39 lines
2.0 KiB
Markdown
# 部署
|
||
## 从Docker构建
|
||
运行`docker run -it --name bookstore -v [your data dir]:/bookstore/data -p [your port]:3000 docker.io/happyzym/bookstore:1.0.2.0`
|
||
|
||
执行此步骤后,无需执行下列的 依赖、下载与构建、安装步骤。
|
||
## 依赖
|
||
- `g++`、`CMake`:注意,要支持C++17
|
||
- `Node.js`、`npm`:注意,本项目使用NodeJs 20.10开发的,apt默认源的版本过旧,请移步<https://github.com/nodejs/help/wiki/Installation>和<https://nodejs.org/en/download/>
|
||
|
||
## 下载与构建
|
||
1. 下载或克隆本仓库,并进入仓库根目录
|
||
2. 运行以下指令:
|
||
```
|
||
mkdir build
|
||
cd build
|
||
cmake -B . -S ..
|
||
cmake --build .
|
||
cd ../frontend/Web
|
||
npm install
|
||
```
|
||
|
||
## 安装
|
||
直接把**整个项目文件夹**移动到你想移动到的位置
|
||
|
||
## Windows桌面端生成
|
||
1. 编辑文件`frontend/client/main.js`的第9行,替换成你的服务器运行的网址,并编辑`frontend/client/package.json`,修改相关信息
|
||
2. 进入`frontend/client`目录,依次执行`npm install`、`npm install --save-dev electron`、`npm install -save-dev electron-builder`和`npm run dist`。随后会在`frontend/client/dist`目录下生成客户端安装包。此步骤可能需要管理员权限。
|
||
|
||
# 运维
|
||
## 打开与关闭
|
||
启动方式:用`node`执行`frontend/Web/index.js`,务必在后面带上数据库存放位置,它应当是一个目录,并且必须以`/`结尾。执行该命令后,会一直等到服务器停止运行才退出。服务器监听3000端口。(示例:`node index.js /bookdata/`)
|
||
|
||
关闭方式:打开WebUI,以超级管理员身份登录,并在浏览器控制台中输入`await ShutDownWholeSystem();`,没有任何输出则表明关闭成功。
|
||
|
||
## 注意事项与TIP
|
||
- 后端带有缓存,务必避免强制中止
|
||
- 执行启动命令后,会一直等到服务器停止运行才退出,如果使用`systemd`管理,类型是`simple`而**不是**`forking`。
|
||
- 服务器启动后,会一直向标注输出打印Log,可以把它重定向并收集起来。
|
||
- 务必保证服务器运行在域名根目录下 |