当前位置: 首页 > 知识库问答 >
问题:

Azure应用服务(Linux),NEXT JS应用,PM2无法设置群集模式

吴均
2023-03-14

我尝试使用启动命令“PM2 runtime start ecosystem.config.JS”或“PM2--no daemon start ecosystem.config.JS”在Azure应用程序服务(Linux)的下一个JS应用程序上通过PM2设置集群。两个命令都失败。当我使用pm2运行时,传递给NodeJS脚本的当前工作目录变成:“wwwroot/econosystem.config.js/.next”作为“目录参数”,服务器出现故障。在第二个命令pm2--no daemon中,我接收到未知或意外的信息选项:--no daemon。这两个命令都适用于“fork”模式。是否可以使用nextjs应用程序为azure应用程序服务设置群集模式?

ecosystem.config.code

module.exports = {
    apps: [
        {
            name: 'next',
            script: './node_modules/next/dist/bin/next',
            args: 'start -p ' + (process.env.PORT || 3000), 
            instances: 2,
            exec_mode: 'cluster',
            watch: false,
            autorestart: true,
        },
    ],
};*

错误--无守护进程

在此处输入图像描述

Error for pm2-runtime
 Error: Could not find a production build in the '/home/site/wwwroot/ecosystem.config.js/.next' directory. Try building your app with 'next build' before starting the production se
rver. https://err.sh/vercel/next.js/production-start-no-build-id
0|next|     at Server.readBuildId (/home/site/wwwroot/node_modules/next/next-server/server/next-server.ts:2044:15)
0|next|     |     at new Server (/home/site/wwwroot/node_modules/next/next-server/server/next-server.ts:199:25)
0|next|     |     at createServer (/home/site/wwwroot/node_modules/next/server/next.ts:41:10)
0|next|     |     at start (/home/site/wwwroot/node_modules/next/server/lib/start-server.ts:9:15)
0|next|     |     at exec (/home/site/wwwroot/node_modules/next/cli/next-start.ts:53:3)
0|next|     |     at /home/site/wwwroot/node_modules/next/bin/next.ts:113:19 code here

共有1个答案

卫博
2023-03-14

在pm2运行时之前添加命令pm2列表可以解决这个问题,我假设命令pm2列表初始化pm2并为pm2运行时设置正确的路径。

 类似资料:
  • 我有一个部署在Azure应用服务上的NodeJS应用程序。用38 MB的文件做一个帖子,我得到一个404错误,但是在引擎盖下有一个IIS问题 要设置“maxAllowedContentLength”,我必须编辑“web”。配置文件。 这是不好的,因为如果我在Azure Portal应用程序设置上做一些更改,那么我的本地版本的web应用程序将无法运行。“配置”与自动生成的文件冲突。 是否可以以其他方

  • 我正在尝试删除与我之前创建的移动应用后端相关的所有内容,并且我能够删除除应用服务计划之外的所有内容。 这表明应用程序服务计划没有连接的应用程序和定价层,但我仍然无法删除它: 当我尝试单击计划以查看其详细信息时,门户将进入无限加载状态,而不会发生任何其他情况: 有人能帮我解决这个问题吗?

  • 我正在使用Node.js、Express和pm2构建一个用于流程管理的无状态Web应用程序。在生产环境中,我为服务器CPU的每个核心运行一个应用程序实例(感谢pm2集群模式)。 最近我开始阅读Greenlock-Express(用于自动获取证书),它还有一个“cluster”属性,如果我理解正确的话,它基本上与pm2集群模式做的事情相同。 如果我在集群模式下同时运行Greenlock-Expres

  • 我一直在尝试将一个应用程序部署到Azure应用程序服务(免费层),由于内存限制,该应用程序不断被杀死,因为它使用了太多内存。当然,解决这一问题的最简单方法是在启动时在JVM上设置Xmx900m,但是我尝试的方法到目前为止都不起作用。 我所尝试的: 将Xmx900m添加到web。config(配置)httpPlatform标签,位于参数属性(开始处) 我可以在Azure App Service Ja

  • 我试图使用Azure CLI配置Azure Web应用的应用程序日志记录(Blob)和Web服务器日志记录(存储)设置。 我正在使用以下命令创建存储容器: az存储容器创建--帐户名StorageAccName--名称ContainerName--身份验证模式登录 但是,我无法链接Web应用中的存储设置以使用新容器。 我在参考留档里找不到任何东西。 https://docs.microsoft.c

  • 我使用此命令使用powershell创建了一个新的Web应用程序。 现在,我希望将web应用的应用服务计划从免费更改为共享/标准等。 读过文章 https://azure.microsoft.com/en-us/documentation/articles/azure-web-sites-web-hosting-plans-in-depth-overview/ 无法创建空的应用程序服务计划。那么,