开发工具

PM2附带两个开发工具,可以帮助您在开发阶段的:观测和重启模式以及静态文件服务器。

观测和重启

观测和重启模式可观测当前目录以检测文件更改和自启动。

您可以在您的ecosystem.config.js中启用此模式:

  1. module.exports = {
  2. apps : [{
  3. name: "app",
  4. script: "./app.js",
  5. watch: true,
  6. }]
  7. }

请注意,观测和重启模式会导致硬重启,且不会发送SIGINT。

观测选项

您可以使用高级选项来指定要观测的路径或要忽略的路径。

  1. module.exports = {
  2. apps : [{
  3. name: "app",
  4. script: "./app.js",
  5. watch: ".",
  6. }]
  7. }
  • watch也可以是一串或一组要观测的路径。 当设置为true时,将观测当前目录。
  • ignore_watch可以是路径或字符串的数组。 它被chokidar依赖用作一个glob或正则表达式。
  • watch_options是作为chokidar依赖项的选项给出的对象(PM2使用的默认选项是持久稳固的,且ingoreInitial设置为true)
    在使用NFS设备时,您需要按照此chokidar问题中的说明设置usePolling: true

使用CLI

观测模式也可以通过CLI使用

  1. pm2 start app.js --watch

但是,请注意,启用 —watch时,您必须使用 pm2 stop —watch <app_name>来停止该进程,因为一般的停止不会使观测停止。

通过HTTP服务静态文件

PM2可以通过HTTP服务静态文件(如前端应用):

  1. pm2 serve <path> <port>

由于默认值是 current folder8080,您可以直接使用:

  1. pm2 serve

在生态系统文件中:

  1. module.exports = {
  2. apps: [{
  3. name: "static-file",
  4. script: "serve",
  5. env: {
  6. PM2_SERVE_PATH: ".",
  7. PM2_SERVE_PORT: 8080,
  8. },
  9. }]
  10. }

并以此开始:

  1. pm2 start ecosystem.config.js

所有其他PM2选项仍然可用。

下一步

使用SSH轻松部署

疑问?

我们一直乐于帮您解决可能遇到的问题。搜索我们的文档或查看常见问题的答案。您也可以在我们的社区论坛发布问题或评论

原文: https://pm2.io/doc/zh/runtime/guide/development-tools/