Warning
大体功能写完了,还差小细节,欢迎反馈
这是以 Golang 重写的 Mix Space Core
Warning
我 并不建议你使用此项目进行 Mix Space 部署
此项目基于 mx-space/core 9.7.0 做了 API 兼容,独立于主线,因此不会继续跟进主线的更改
您可以对此项目进行贡献,但我仍希望你去支持本家 Innei 的作品
本家: https://github.com/mx-space/core
- Go: >= 1.22
- Redis: >= 7.4.2
- MySQL: >= 8.0.0
- MiliSearch: >= 1.35.1
额暂时呢我不会把面板本体附带到 Go 编辑的二进制产物中
所以需要自行编译面板并在 config.yml 中填写 dist 路径
面板版本以 BLxcwg666/mx-admin 为准,其他版本及原作者的版本兼容性将不被保证
我懒得写 go test file,所以没有 test 环节
- 启动:
go run ./cmd/server - 指定配置文件:
go run ./cmd/server --config ./config.yml(若未指定则使用二进制同级目录的config.yml) - 集群模式:
go run ./cmd/server --cluster --cluster_workers 2
- 可以直接使用
deploy/systemd/mx-core-go.service - 建议把二进制部署到
/opt/mx-core-go/bin/server - 建议把配置文件放到
/etc/mx-core-go/config.yml - 生产环境记得把配置里的
env设为production - 可选环境文件:
/etc/default/mx-core-go(例如设置CLUSTER=true、CLUSTER_WORKERS=2) - 建议先创建运行用户:
sudo useradd --system --home /opt/mx-core-go --shell /usr/sbin/nologin mx-space - 建议给生产环境配置绝对路径,避免日志、备份、上传目录落到二进制目录下,例如:
paths:
logs: /var/log/mx-core-go
backups: /var/lib/mx-core-go/backups
static: /var/lib/mx-core-go/static- 安装服务:
sudo cp deploy/systemd/mx-core-go.service /etc/systemd/system/mx-core-go.service - 重载并启动:
sudo systemctl daemon-reload && sudo systemctl enable --now mx-core-go
本项目采用 GNU Affero General Public License v3.0 (AGPLv3) 开源
- API 设计及原始逻辑来源于 Innei 的 mx-space/core。
- 本项目是该作品的 Golang 兼容实现