Strapi 如何在后台启动?

Strapi how to start in background?

通常我们使用"strapi start"来启动strapi。

我在 AWS 上托管它 ubuntu:

尝试 "start strapi &" 到 运行 它在后台。但是,一旦终端关闭,我们就无法再访问strapi控制台了。

需要使用pm2:

开始:

npm install pm2 -g

NODE_ENV=production pm2 start server.js --name api

列出所有进程:

pm2 list

┌──────────┬──────┬──────────┬──────┬────────┬──── ──────┬──────────┬────────┬──────┬────────────┬────── ──┬────────────┐

│应用名称│id│版本│模式│pid│状态│重启│运行时间│cpu│内存│用户│观看│

├──────────┼────┼────────┼──────┼──────┼── ──────┼──────────┼────────┼──────┼────────────┼────── ──┼────────────┤

│ api │ 0 │ 0.1.0 │ 分叉 │ 21817 │ 在线 │ 0 │ 2m │ 0% │ 108.0 MB │ ubuntu │ 禁用 │

└──────────┴────┴────────┴──────┴────────┴──── ──────┴──────────┴────────┴──────┴────────────┴────── ──┴────────────┘

要停止,请使用 id:

pm2 stop 0

我在使用@user1872384 的解决方案时出现 script not found: server.js 错误。 因此,这是在后台模式下 运行 strapi 的正确方法。

NODE_ENV=production pm2 start --name APP_NAME npm -- start

这只会告诉 pm2 使用 npm start 命令并让 npm 执行 which script to run 部分。

希望对大家有所帮助。

第一个

npm install pm2 -g

将 server.js 添加到项目的根目录并在下面的行中写入:

const strapi = require('strapi');
strapi().start();

然后保存

pm2 start server.js

要 运行 开发模式下的 strapi,请从您的项目文件夹中使用以下 pm2 命令。

pm2 start npm --name my-project -- run develop

pm2 list

查看状态

这是关于 starting Strapi with PM2 的官方页面。

从 strapi 命令开始

默认有两个重要命令。

yarn develop 以开发模式启动您的项目。

yarn start 开始生产您的应用程序。

您也可以使用 yarn start 或 develop 命令启动进程管理器。

pm2 start npm --name my-app -- run develop

最好的方法是使用 pm2 及其 ecosystem.config.js 文件。

  1. 首先,通过以下方式安装pm2:
npm i -g pm2@latest
  1. ecosystem.config.js中添加如下代码:
module.exports = {
  apps: [
    {
      name: 'give-your-app-a-name',
      script: 'npm',
      args: 'start',
      watch: true, // automatically restart the server for file changes
      max_memory_restart: '450M',
      env: {
        NODE_ENV: 'production',
      },
    },
    {
      name: 'give-your-another-app-a-name',
      script: 'npm',
      args: 'start',
      env: {
        NODE_ENV: 'production',
      },
    },
  ],
}
  1. 最后在您的服务器上执行:
pm2 start ecosystem.config.js

就是这样。

pm2 start npm --name my-app -- run develop

我们也可以按类型从pm2开始

pm2 start "yarn develop"