要求
- 一台能够(通过任何你喜欢的方式)向外网提供服务的树莓派。
- 其他硬件需求确保依赖服务(主要是MongoDB)正常运行即可。
简要流程介绍
core
由于 core 涉及 Redis、MongoDB、PM2等环境依赖,建议采用 Docker Compose 进行部署。
- 从 GitHub Release 下载 core 预构建包。
- 构建 core Docker镜像。
- 进行配置。
- 启动 Docker Compose。
Shiro
Shiro 几乎不涉及其他依赖,即使是未配置进环境变量的 Node 可执行文件也能运行,因此无需使用 Docker,这里采用 Systemd 系统服务的方式进行部署。
- 从 GitHub Release 下载 Shiro 预构建包。
- 解压到合适的地方。
- 配置系统服务。
- 使用systemctl启动。
core 部署详细步骤
- 从GitHub release 下载Core预构建包
release-linux.zip。 - 从源代码处下载 docker-entrypoint.sh。
- 上传到镜像构建服务器(通常就是你的树莓派,如果不是请手动处理镜像传输问题)上的构建文件夹。
编写Dockerfile,示例(包含了中国大陆所需的换源):
CodeBlock Loading...构建镜像,如:
CodeBlock Loading...- 从源代码处下载 docker-compose.yml。
- 按需修改docker-compose.yml,如树莓派 4b 等 CPU 微架构较旧的设备可能需要将 MongoDB 限制在 4.4.18 版本或更旧。
- 启动 Docker Compose。
- 按需配置反代等网络服务,同官方文档,不再赘述。
Shiro 部署详细步骤
- 下载 Node.js 可执行文件并解压,假设Node可执行文件在
/opt/node-vxx.xx.x-linux-arm64/bin/node。 - 从 GitHub release 下载 Shiro 预构建包。
- 解压到合适的地方,以
/opt/mx-space/shiro为例。 配置系统服务,在
/etc/systemd/system/下新建服务文件,示例shiro.service:CodeBlock Loading...其中,
User字段出于网页服务配置习惯,非必需,如填写务必确保相应用户存在;WorkingDirectory为 Shiro 预构建包解压到的文件夹内的standalone文件夹;PORT字段非必须;- 在这里填写了
NEXT_PUBLIC_API_URLNEXT_PUBLIC_GATEWAY_URL环境变量则无需维护.env配置文件。
- 使用 systemctl 启动服务,若服务文件修改则需
systemctl daemon-reload,后systemctl enable shiro.service; systemctl start shiro.service。 - 按需配置反代等网络服务,同官方文档,不再赘述。