0

我正在尝试在 Azure Web 应用程序中运行 AtlasBoard,但无法使其正常工作。我使用“30 秒内开始”步骤创建了一个新板,当我在本地启动演示板时,演示板运行良好。它既可以通过启动它,atlasboard start 3333也可以通过运行node start.

我已将 node_modules 目录添加到 .gitignore。

我在 Azure 上使用 git 部署,这似乎工作正常。部署日志还显示 npm 模块已安装。

这是部署的最后一个输出:

Using start-up script start.js from package.json.
Generated web.config.
The iisnode.yml file explicitly sets nodeProcessCommandLine. Automatic node.js version selection is turned off.
Selected npm version 3.5.1
npm WARN Invalid name: "HRMTS AtlasBoard"
npm WARN wwwroot No description
npm WARN wwwroot No repository field.
npm WARN wwwroot No README data
npm WARN wwwroot No license field.
Finished successfully.

但是,该应用程序似乎没有启动,当我查看 Kudu 控制台中的日志消息时,我得到了这个:

Error: error installing D:\home\site\wwwroot\packages\demo
    at process.<anonymous> (D:\Program Files (x86)\iisnode\interceptor.js:73:106)
    at emitOne (events.js:96:13)
    at process.emit (events.js:188:7)
    at process._fatalException (node.js:267:26)

有人知道这里出了什么问题吗?

4

1 回答 1

0

如果您使用https://bitbucket.org/atlassian/atlasboard/src上的演示应用程序的存储库在 Azure 上进行测试,我们需要进行一些额外的修改才能使测试在 Azure Web 应用程序上运行。

首先,假设您已成功将应用程序部署到 Azure,但在开始运行应用程序时失败。然后您可以利用 Kudu 控制台站点或 Visual Studio 在线扩展(请参阅如何在应用服务上安装 composer?关于如何启用 Azure Web 应用的扩展的答案)查看错误日志D:\home\site\wwwroot\packages\demo\npm-debug.log

有类似的错误:

155 错误节点 -v v0.6.20

156 错误 npm -v 1.1.37

157 错误消息 SSL 错误:CERT_UNTRUSTED

似乎atlasboardAzure 上的运行节点版本非常低。我们可以手动修改依赖脚本来绕过错误。

如果在部署过程中遇到错误,则应在package.json部署前修改 npm 版本,例如:

"engines": {
    "npm": ">2.0.0",
    "node": ">=0.10"
  },

部署后:

  • 检查并修改根目录中的portstart.js

    atlasboard({port: process.env.port||3000 , install: true}, 
    function  (err) {
      if (err) {
        throw err;
      }
    });
    
  • 修改install函数D:\home\site\wwwroot\node_modules\atlasboard\lib\package-dependency-manager.js以使用更高的 npm 版本并删除--production参数,例如:

    ...
    var npmCommand = isWindows ? "D:\\Program Files (x86)\\npm\\3.5.1\\npm.cmd" : "npm";
    executeCommand(npmCommand, ["install", pathPackageJson], function(err,     code){
    ...
    })
    

然后重新启动您的网站。

如有任何进一步的疑虑,请随时告诉我。

于 2016-05-09T07:22:01.090 回答