
Strapi 是什么?
Strapi 是基于 Node.js 开发的,开源,无头内容管理系统(Headless CMS)。当安装完成后,你可以在界面编写内容(文字),上传图片。最后,你可以用API的方式去调用这些内容(以JSON形式返回)。
21云盒提供了极简单的 Strapi 部署方法,你可以在21云盒子上通过以Node环境的方式进行部署。
分别针对不同需求做了价格和效能上的调配, 我们为你准备了两套部署方案:
方案一: 针对中大型项目,性能较优的方案: Strapi + PostgreSQL
通过以下几步就可以把 Strapi 运行起来:
- 注册成为21云盒子会员
- Fork strapi-postgres 启动模板
- 创建一个数据库
- 在21云盒子上创建一个云服务, 并允许21云盒子访问你的代码库(repo)
- 配置相关参数
环境 | Node 12.19 |
---|---|
构建命令 | yarn && yarn build |
启动命令 | yarn start |
在选择配置方面,Strapi官方文档建议 至少使用 2GB 内存和 1核CPU 的服务器,如果选择较少内存的机器进行部署,有可能会导致部署失败。
点 进阶配置 进行环境变量配置
环境变量Key | 环境变量Value |
---|---|
NODE_ENV | production |
DATABASE_URL | 在云数据库控制台中点 数据库URL 获取 |
JWT_SECRET | 随机生成32位字符* |
ADMIN_JWT_SECRET | 随机生成32位字符* |
其他相关环境变量可以参考 strapi官方文档
# 随机生成32位字符方法
# 在 命令行输, 然后把生成的字符贴进环境变量
echo $(base64 /dev/urandom | head -c32)
- 点 “马上创建”
部署操作视频
方案二: 针对中小型项目, 性价比较优的方案: Strapi + SQLite
如何部署?
- 注册成为21云盒子会员
- Fork strapi-sqlite 启动模板
- 在21云盒子上创建一个云服务, 并允许21云盒子访问你的代码库(repo)
- 配置相关参数
环境 | Node 12.19 |
---|---|
构建命令 | yarn && yarn build |
启动命令 | rsync -a public/ /data/public/ && yarn start |
在选择配置方面,Strapi官方文档建议 至少使用 2GB 内存和 1核CPU 的服务器,如果选择较少内存的机器进行部署,有可能会导致部署失败。
点 进阶配置 进行环境变量配置
环境变量Key | 环境变量Value |
---|---|
NODE_ENV | production |
DATABASE_FILENAME | /data/strapi.db |
JWT_SECRET | 随机生成32位字符* |
ADMIN_JWT_SECRET | 随机生成32位字符* |
其他相关环境变量可以参考 strapi官方文档
# 随机生成32位字符方法
# 在 命令行输, 然后把生成的字符贴进环境变量
echo $(base64 /dev/urandom | head -c32)
- 点 “马上创建”
如果对上描文字描述不清晰,可以参考以下实际操作视频:
第一部分内容:
- 如何一键部署Headless CMS Strapi 需要配置的参数
- 如何使用环境变量存放敏感讯息
第二部分内容:
- 如何通过修改环境变量进入
development
模式 - 上传示例 Shop
- 如何访问接口内容
研发环境
在研发的环境中,可以使用 yarn develop
或 strapi develop
在进行研发和调试。
更多strapi相关的介绍可以观看strapi的官方介绍视频
为什么选 21云盒子?
免运维,开箱即用的云服务在国内基本上没有,如果在找类似 Heroku 或 Nelify 的云服务平台,21云盒子还在经营,并且是最接近的了。
至于 21云盒子 和 国外这些云服务平台有什么不一样? 可以参考: