如何把 Strapi 项目部署到服务器?

Strapi 是什么?

Strapi 是基于 Node.js 开发的,开源,无头内容管理系统(Headless CMS)。当安装完成后,你可以在界面编写内容(文字),上传图片。最后,你可以用API的方式去调用这些内容(以JSON形式返回)。

如何把 Strapi 项目部署到服务器?_第1张图片

Strapi 官网截图

21云盒提供了极简单的 Strapi 部署方法,你可以在21云盒子上通过以Node环境的方式进行部署。

如何部署?

  1. 注册成为21云盒子会员
  2. Fork strapi示例
  3. 在21云盒子上创建一个云服务, 并允许21云盒子访问你的代码库(repo)
  4. 配置相关参数
环境 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)
  1. 点 “马上创建”

如果对上描文字描述不清晰,可以参考以下实际操作示频:

第一部分内容:

  1. 如何一键部署Headless CMS Strapi 需要配置的参数
  2. 如何使用环境变量存放敏感讯息

如何把 Strapi 部署到服务器 (一) | 21云盒子

 

第二部分内容:

  1. 如何通过修改环境变量进入development模式
  2. 上传示例 Shop
  3. 如何访问接口内容

如何把 Strapi 部署到服务器 (二) | 21云盒子

 

研发环境

在研发的环境中,可以使用 yarn develop 或 strapi develop 在进行研发和调试。

更多strapi相关的介绍可以观看strapi的官方介绍视频

为什么部署在21云盒子?

原因 1: 方便

21云盒子创立至今,在国内第一家真正提供了像 Netlify, Heroku 等轻松部署的功能,同时也保证了服务的速度和稳定性。 每个云服务项目,只需要在首次完成 2 项配置,后续当你Git Push代码,21云盒子就会帮你完成自动部署。

原因 2: 21云盒子稳定,提供网站备案方案

如果你的网站现在使用的是 Netlify, Vercel, Gatsby Cloud等服务,国内用户将没办法访问。

为什么呢? 根据国家工信部的要求,所有在国内上线的网站都必先完成备案, 但国外的云服务平台不提供国内的的备案,所以部署在国外的云服务平台,或许能暂时访问,但长远来看,会非常不稳定。

原因 3: 国内极速访问

再好的服务,如果打开速度太慢,还是没办法使用的。在21云盒子上部署的云服务,一键实现部署全国各地的CDN节点。以面是和国外各大服务比较的案例:

  • 21云盒子 vs Netlify

  • 21云盒子 vs Vercel

  • 21云盒子 vs Heroku

  • 21云盒子 vs Github Pages

你可能感兴趣的:(JAMstack,21云盒子,cms,前端,node.js,reactjs,yarn)