mx-space(旧版)部署教程
前言
提莫酱自己换了一个博客系统,不知道大家有没有没想部署一个玩玩呢?今天,我就详细的说一下我的部署过程。 ## 声明 这个程序不是我写的,如果遇到部署工作中的问题,可以问我,当然直接询问作者innei会更高效。本教程基于Mx-space一个全新打造的开源个人空间二次修改。 ## 部署要求 - 服务器环境:Centos 7 不要用Centos8,已经停止更新,Centos7还能支持到2024年 - 必备软件:vim,node14,MongoDB,Redis,Yarn ,宝塔面板。 - 服务器内存要求:大于1G,否则可能会出现内存溢出。 - 一个善于思考,和能提出正确问题的脑子。 ## 部署准备 ### 安装必备软件 - 在宝塔面板安装Nginx,pm2管理器,MongoDB,Redis - 安装yarn ```bash npm install -g yarn
安装完成,查看版本号
```bash
node -v
yarn -v
克隆repo
请注意!必须要保持在同一个目录!
在原教程中是这样写的
但是由于部分项目有改动,应该是这样
```bash
cd
mkdir mx
cd mx
#源仓库
git clone --branch v1.18.0 https://github.com/mx-space/kami.git
#速度太慢可选
git clone --branch v1.18.0 https://gitee.com/a1435241/kami.git
#源仓库
git clone --branch v2.5.0 https://github.com/mx-space/admin-next.git
#速度太慢可选
git clone --branch v2.5.0 https://gitee.com/a1435241/admin-next.git
#源仓库
git clone https://github.com/mx-space/server.git
#速度太慢可选
git clone https://gitee.com/a1435241/server.git
### 准备域名
这边建议直接解析三个域名到服务器
这里假设解析的是:
前端: kami.test.cn
中端: admin.test.cn
后端: server.test.cn
## 开始部署
### 准备站点
分次在宝塔面板-`网站`中添加站点。
然后点击`设置`部署一下SSL证书。
### 部署 Server
1.进入宝塔站点设置,点击配置文件,在access_log那行前面加入以下代码:
![](https://cdn.timochan.cn/img/QQ截图20210910153827.png)
```nginx
location /socket.io {
proxy_http_version 1.1;
proxy_buffering off;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_pass http://127.0.0.1:2333/socket.io;
}
2.在根目录输入 cd ~/mx/server
,定位至server文件夹
接着我们输入yarn进行install
输入 cp .env.example .env
,复制.env.example为.env
3.输入命令:vim .env
,输入i,进入修改模式,修改内容 配置参考在下面。
注:使用vim的步骤可以在宝塔面板中完成,不再赘述。
Server .env 配置参考
SECRET=ahsdljasdasdhaisASHLDasdassdasdasrwedwqe #参考值,不用管
PORT=2333
CORS=1
APP_MAX_MEMORY=150M
ORIGIN=kami.test.cn,admin.test.cn #修改此项为你前端,admin的访问地址,用,分割
4.找到ecosystem.config.js,将里面的所有内容替换为下面的代码: ```text /* * @Author: Innei * @Date: 2020-04-30 18:14:55 * @LastEditTime: 2020-05-25 21:05:26 * @LastEditors: Innei * @FilePath: /mx-server/ecosystem.config.js * @Copyright */
const env = require('dotenv').config().parsed
module.exports = {
apps: [
{
name: 'mx-space-server',
script: 'dist/apps/server/main.js',
autorestart: true,
instances: 'max',
exec_mode: 'cluster',
watch: false,
// instances: 1,
// max_memory_restart: env.APP_MAX_MEMORY || '150M',
env: {
NODE_ENV: 'production',
...env,
},
},
],
}
5.之后输入 `:wq` 退出,运行下面的命令
bash
yarn
yarn build
yarn prod:pm2
```
6.我们去到宝塔的站点设置,点击反向代理选项卡,点击添加反向代理 代理名称自己随便写,目标URL填写 http://127.0.0.1:2333 ,其他不需要改,保存即可.
注意:如果发现报错,可以先把该站点的配置文件修改回来,设置反向代理,再修改回去。
部署Admin
1.在根目录输入以下命令 cd mx/admin-next
, 输入yarn
进行install
2.输入命令vim .env.production
,输入i,修改内容
#### Admin .env 配置参考
text
VITE_APP_BASE_API=https://server.test.cn/api/v1
VITE_APP_WEB_URL=https://test.cn
VITE_APP_GATEWAY=https://server.test.cn
VITE_APP_PUBLIC_URL=
VITE_APP_IPV6_LOOKUP_API_URL=
VITE_APP_GAODEMAP_KEY=
VITE_APP_LOGIN_BG=https://gitee.com/xun7788/my-imagination/raw/master/images/88426823_p0.jpg
之后输入:wq
退出
3.输入命令 yarn build
进行构建
我们输入cp -rf dist/* /www/wwwroot/admin.test.cn/
,将构建出来的包移至站点目录(请将admin.test.cn修改为你的admin域名) 之后Admin就部署好啦,访问一下admin,初始密码是master
具体的使用方法我会在下面一一讲述。
请把原来的admin网站根目录文件删除掉。
部署 Kami
1.在根目录下输入以下命令 cd mx/kami/
之后输入yarn
进行install
输入cp .env.example .env
,复制例子
2.输入命令:vim .env
,输入i,进入修改模式,修改里面的内容
#### Kami .env 配置参考
text
BASEURL=https://kami.test.cn
APIURL=https://server.test.cn/api/v1
TRACKING_ID=G-X4PVVRB6TF
ASSETPREFIX=
REDIS=1
GATEWAY_URL=https://server.test.cn
ALWAYS_HTTPS=1
NEXT_PUBLIC_SENTRY_DSN=
SENTRY_ORG=
SENTRY_PROJECT=
SENTRY_AUTH_TOKEN=
NETEASE_PHONE=
NETEASE_PASSWORD=
BASEURL
修改为前端
APIURL
将前面的server.test.cn修改为你的server端
GATEWAY_URL
修改这里为你的后端(Server)
NETEASE_PHONE
网易云音乐账号手机(用于获取音乐)
NETEASE_PASSWORD
网易云音乐账号密码(用于获取音乐)
#### 修改Kami配置信息
1.进入mx/kami/public/manifest.json,修改里面的json为自己的内容
2.进入mx/kami,修改configs.ts,照着示例,修改为自己的内容
3.之后再输入 yarn build
进行构建
4.构建完毕后,运行 pm2 start ecosystem.config.js
即可~,可能需要输入pm2 save
5.我们去到宝塔的站点设置,点击反向代理选项卡,点击添加反向代理 代理名称
自己随便写,目标URL
填写 http://127.0.0.1:2323
,其他不需要改,保存即可
附加内容
如果发现admin修改了配置后没有生效
输入redis-cli
,进入redis客户端
输入FLUSHALL
,出现OK即可~
我们可以安装一下htop观察整个的占用状态
bash
yum install htop -y
htop
以及运行完后,我们运行pm2 ps
命令观察一下是否成功启动
┌────┬────────────────────┬──────────┬──────┬───────────┬──────────┬──────────┐
│ id │ name │ mode │ │ status │ cpu │ memory │
├────┼────────────────────┼──────────┼──────┼───────────┼──────────┼──────────┤
│ 1 │ mx-space-graphql │ cluster │ 0 │ online │ 0% │ 54.6mb │
│ 3 │ mx-space-graphql │ cluster │ 0 │ online │ 0% │ 55.9mb │
│ 0 │ mx-space-server │ cluster │ 1 │ online │ 0% │ 112.0mb │
│ 2 │ mx-space-server │ cluster │ 4 │ online │ 0% │ 109.9mb │
│ 4 │ mx-web │ fork │ 5631 │ online │ 0% │ 40.7mb │
│ 5 │ mx-web │ fork │ 8828 │ online │ 0% │ 1.4mb │
└────┴────────────────────┴──────────┴──────┴───────────┴──────────┴──────────┘
## 使用文档
### Admin 修改信息
我们先进入admin,初始密码是master
进入之后,我们点击设定 - 用户
修改昵称、别名等
记得保存!
点击安全选项,输入新的密码即可修改admin进入的密码啦~
### 必要的修改配置
点击设定 - 系统-网站设置
修改网站设置为你所对应的地址(要是外网能访问到的,除非你是本地localhost运行啦),Gateway 地址不需要修改,默认就好,点击保存!
后面还有些SEO设置,自行修改 ### 新增页面 首页有两个页面的入口,一个是留言,一个是关于
我们进入Admin-页面-新建页面
标题和副标题随你选择,反正下面的路径名字要写对
关于的路径是:about
留言的路径是:message
### 修改Kami的某处后应用修改
进入kami目录运行下面的命令即可~
bash
yarn build
pm2 start ecosystem.config.js
前端登录
地址为:前端域名/login