Mix Space 后端搭建
一·项目简介与准备
简介
Mix Space 是一个一款简洁而不简单的个人博客系统,它够快,够现代。你可以利用它构建一个属于自己的个人空间,记录生活,分享知识。

Image


要求
系统:Linux(Ubuntu/Debian)
推荐配置要求:CPU2核及以上 内存4GB及以上
准备
国内服务器需提前进行 ICP 备案以便公网访问。
ICP/IP地址/域名信息备案管理系统
SSL 证书申请(阿里云免费)
二·安装 1panel
在这里我们使用在线安装
## Ubuntu
curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && sudo bash quick_start.sh
## Debian
curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && bash quick_start.sh
其余设备指令可看这里在线安装 - 1Panel 文档
在安装过程中会填写下列相关内容
## 设置 1Panel 安装目录(默认为/opt)
默认目录是/opt,如果没有特殊要求,回车即可,当然也可以自定义设置成自己目录。
## 设置 1Panel 端口(默认为20410):
根据自己需求设置,但需要开启服务器防火墙端口
## 设置1Panel安全入口(默认为1ca7f81e6d):
根据自己需求进行设置,安全入口就是使用ip地址登录时端口后面的后缀
## 设置1Panel面板用户默认为244118a93b)
这里设置用户名和密码
保存1Panel登录地址、安全入口、用户名和密码信息。
远程连接到云服务器后,执行 1pctl user-info
命令可获取安全入口(entrance)。
修改密码可执行命令: 1pctl update password
。
安装成功后,控制台会打印面板访问信息,可通过浏览器访问 1Panel:http://目标服务器 IP 地址:目标端口/安全入口
。
在 1panel 中配置容器的镜像加速
1panelhttps://docker.1panel.live
随后在应用商店中安装openresty 作为反代工具
三·安装 Core 后端
安装 Docker
首先安装并更新一些必要的软件包
apt update
apt upgrade -y
apt install curl vim wget gnupg dpkg apt-transport-https lsb-release ca-certificates
安装 Docker 由于 Docker 官方仓库位于国外,如果服务器在国内使用阿里云的源进行安装
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
若服务器在国外可直接使用 Docker 官方指令进行安装
curl -fsSL https://get.docker.com | bash -s docker
Docker 安装完成后使用以下指令进行验证
docker -v
## Docker version 28.0.1, build 068a01e
docker-compose version
## Docker Compose version v2.33.1
使用 Docker 进行部署
拉取 Core配置文件
cd /opt && mkdir -p mx-space/core && cd $_
## 创建/opt/mx-space/core文件夹
wget https://fastly.jsdelivr.net/gh/mx-space/core@master/docker-compose.yml
## 拉取配置文件
修改 Core配置文件
使用 vim 进行文件修改
cd /opt/mx-space/core
vim docker-compose.yml
或在 1panel 中系统-文件-/opt/mx-space/core/docker-compose.yml 进行编辑
## 配置文件的一部分
services:
app:
container_name: mx-server
image: innei/mx-server:latest
environment:
- TZ=Asia/Shanghai
- NODE_ENV=production
- DB_HOST=mongo
- REDIS_HOST=redis
- ALLOWED_ORIGINS=localhost
- JWT_SECRET=YOUR_SUPER_SECURED_JWT_SECRET_STRING
在 docker-compose.yml
中的 environment
字段填入对应内容,使其符合 yaml 语法,保存即可。
JWT 密钥:JWT_SECRET
:需要填写长度不小于 16 个字符,不大于 32 个字符的字符串,用于加密用户的 JWT,务必保存好自己的密钥,不要泄露给他人。被允许的域名:ALLOWED_ORIGINS
:需要填写被允许的域名,通常是前端的域名,如果允许多个域名访问,用英文逗号,分隔。是否开启加密:ENCRYPT_ENABLE
:如果你确定要开启加密,则在配置文件中加入对应内容,开启加密后,你需要在下方填写加密密钥。加密密钥:ENCRYPT_KEY
:如果你不知道这是什么,那么不建议开启此功能,具体内容可参考 Key 加密与安全性 关于 JWT 密钥可以使用 MD5 转换将你熟悉的文字加密作为 JWT 密钥 域名通常为前端域名:例如www.glsaone.xyz
,glsaone.xyz
,localhost loacalhost 作为 前端Api 调用需填入
在相关内容填写完毕记得保存
启动 Core 文件
cd /opt/mx-space/core
docker-compose pull && docker compose up -d
此时后端已经启动完成,我们需要设置反向代理以进行正常访问
四·反向代理
OpenResty 设置反向代理
以1Panel+OpenResty为例:
- 新建静态网站,填写对应域名
- 配置SSL证书开启HTTPS
- 在配置文件最后一个
}
的上方另起一行,粘贴如下配置,并保存。
双域名设置
这里假定前端后端域名均为 www.example.com
。
如果您使用此部分示例配置 Nginx 反向代理,您的:
- API 地址为
https://server.example.com/api/v2
- 前端(Shiro)地址为
https://www.example.com
- GateWay 为
https://server.example.com
- 本地后台为
https://server.example.com/proxy/qaqdmin
单域名设置
这里假定前端域名为 www.example.com
,后端也为 www.example.com
。
如果您使用此部分示例配置 Nginx 反向代理,您的:
- API 地址为
https://www.example.com/api/v2
- 前端(Shiro)地址为
https://www.example.com
- GateWay 为
https://www.example.com
- 本地后台为
https://www.example.com/proxy/qaqdmin
Core 初始化
反向代理配置完成,访问后端 https://www.example.com/proxy/qaqdmin
根据页面提示完成初始化, 若完成后未正确跳转后台,
再次进入 https://www.example.com/proxy/qaqdmin
即可。
Core 更新
使用 Docker 服务进行更新
cd /opt/mx-space/core
docker-compose pull && docker compose up -d
五·特别鸣谢
在搭建Mix-space前后端的过程中,我得到了玖月大佬的极大帮助。无论是技术难题的解答还是宝贵的建议,都让我受益匪浅。在此,我想向玖月表达最诚挚的感谢!他的无私分享和耐心指导不仅帮助我克服了许多难题。
六·参考文献
Mix Space - An Alternative Personal Space - Mix Space 文档
Mix-Space部署最新后端Core - 华岁云小屋