Shiro部署如此简单?!
说在前面
Mix Space 是一个一款简洁而不简单的个人博客系统,它够快,够现代。你可以利用它构建一个属于自己的个人空间,记录生活,分享知识。
本教程采用了1panel辅助部署mix-space
后端
本文章假定前端域名为 blog.example.com,后端为 server.example.com
虽然本教程已经十分小白了,但如果还有不懂的地方,在看这个文章之前你可能还需要了解如何实现域名的解析
及docker的工作原理
准备工作
你需要准备:
- 一台服务器(linux 内核版本 > 4.18 运行内存 > 1Gib)
- 一个域名
- 后端的 SSL 证书
- 一个会问GPT的脑子
安装1panel面板
- 跳转至1panel下载命令页面
- 选择你的服务器系统,复制命令后通过ssh连接到服务器,然后输入命令行后下载
- 安装成功后,控制台会打印面板访问信息,可通过浏览器访问 1Panel:
http://目标服务器 IP 地址:目标端口/安全入口
安装1panel的时候系统会帮你装好docker,后续无需再安装
部署后端
- 拉取配置文件
cd && mkdir -p mx-space/core && cd $_
# 拉取 docker-compose.yml 文件
wget https://fastly.jsdelivr.net/gh/mx-space/core@master/docker-compose.yml
这里的
cd
命令的意思是指 以当前目录为源头寻找文件夹,你可以看看命令行前面的目录以确定当前的位置
确定好目前处于mx-space/core
后方可进行下一步
- 编辑
.env
文件
输入命令
vim .env
根据需求输入内容
# JWT 密钥:需要填写长度不小于 16 个字符,不大于 32 个字符的字符串,用于加密用户的 JWT,务必保存好自己的密钥,不要泄露给他人。
JWT_SECRET=
# 被允许的域名:需要填写被允许的域名,通常是前端的域名,如果允许多个域名访问,用英文逗号,分隔。
ALLOWED_ORIGINS=
# 是否开启加密:如果你确定要开启加密,将 false 改为 true,开启加密后,你需要在下方填写加密密钥。
ENCRYPT_ENABLE=
# 加密密钥:如果你不知道这是什么,那么不建议开启此功能,具体内容可参考 https://mx-space.js.org/usage/security.html
ENCRYPT_KEY=
# 若开启加密,则需注意密钥长度必须为 64 位,不然会在初始化时报错。注意这是不可逆的,务必保存自己的秘钥。所以并不是非常推荐使用,除非你真的需要加密,
- 退出编辑器
按下Esc
后输入:wq!
,再回车 - 在
docker-compose
里将ALLOWED_ORIGINS=
后面改为你的前端域名
- 启动后端
docker compose up -d
- 反向代理
打开服务器的1panel
面板,在1panel的引导下添加你的后端网站。选择反向代理
,在主域名里面填下server.example.com
(记得把server后改成自己的域名)然后向下滑在代理地址里填入127.0.0.1:2333
然后在网站列表里点击你的域名旁边的配置
-配置文件
,这个配置文件只保留前三行,后面的全删了,如:
server {
listen 80 ;
server_name server.example.com;
然后在第四行输入
location /socket.io {
proxy_pass http://127.0.0.1:2333/socket.io;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_buffering off;
proxy_http_version 1.1;
add_header Cache-Control no-cache;
}
## Others
location / {
proxy_pass http://127.0.0.1:2333;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header REMOTE-HOST $remote_addr;
add_header X-Cache $upstream_cache_status;
}
## 反向代理结束
}
然后再配置好ssl证书,确保ssl正常握手
确保你的域名已经解析了你的服务器,此时你应该已经可以打开后端了
https://server.example/proxy/qaqdmin#/
- 然后根据要求完成初始化,再在
设定-网站设置
改成如下格式
前端地址https://blog.example.com
管理后台地址https://server.example.com/proxy/qaqdmin
API 地址https://server.example.com/api/v2
Gateway 地址https://server.example.com
部署前端
这一部分详见Mix-space官网
这一部分官网已经写得很详细了,我也没有什么补充的了!
更新后端
cd mx-space/core
docker compose pull && docker compose up -d
到此为止本教程就结束了,感谢各位的阅读