2016-05-06 11 views
0

Ich versuche AtlasBoard in einer Azure Web App auszuführen, kann es aber nicht ausführen. Ich habe ein neues Board mit den "Get started in 30 seconds" Schritten erstellt und das Demoboard läuft gut, wenn ich es lokal starte. Es funktioniert sowohl mit dem Starten mit atlasboard start 3333 oder wenn ich node start ausführen.Ausführen von AtlasBoard auf Azure Web App mit iisnode

Ich habe das Verzeichnis node_modules zu .gitignore hinzugefügt.

Ich verwende Git-Deployment auf Azure und das scheint gut zu funktionieren. Das Implementierungsprotokoll zeigt auch, dass die npm-Module installiert sind.

Dies ist die letzte ouput aus dem Einsatz:

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. 

die App Paßt nicht jedoch scheinen und zu starten, wenn ich in der Protokollmeldung in der Kudu-Konsole sehen, bekomme ich diese:

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) 

Hat jemand eine Ahnung, was hier nicht stimmt?

Antwort

0

Wenn Sie das Repo der Demoanwendung unter https://bitbucket.org/atlassian/atlasboard/src zum Testen auf Azure verwenden, müssen einige zusätzliche Änderungen vorgenommen werden, damit der Test in Azure Web Apps ausgeführt werden kann.

Zunächst wird davon ausgegangen, dass Sie die Anwendung erfolgreich in Azure bereitgestellt haben und beim Start der Anwendung fehlgeschlagen ist. Anschließend können Sie die Kudu-Konsolenwebsite oder die Visual Studio Online-Erweiterung (siehe Antwort auf How to install composer on app service? zum Aktivieren von Erweiterungen von Azure Web Apps) verwenden, um das Fehlerprotokoll unter D:\home\site\wwwroot\packages\demo\npm-debug.log zu überprüfen.

Es gibt ähnliche Fehler:

155 error node -v v0.6.20

156 error npm -v 1.1.37

157 error message SSL Error: CERT_UNTRUSTED

Es scheint, dass die atlasboard läuft mit sehr niedrigen Knoten-Version auf Azure gebieten. Wir können die abhängigen Skripts manuell ändern, um die Fehler zu umgehen.

Wenn Sie Fehler bei der Bereitstellung zu erhalten, sollten Sie die npm Version in package.json vor der Bereitstellung, zum Beispiel ändern:

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

Nach der Bereitstellung:

  • prüfen und ändern die port in den start.js im Wurzelverzeichnis:

    atlasboard({port: process.env.port||3000 , install: true}, 
    function (err) { 
        if (err) { 
        throw err; 
        } 
    }); 
    
  • ändern Sie die install Funktion in D:\home\site\wwwroot\node_modules\atlasboard\lib\package-dependency-manager.js eine höhere npm Version zu verwenden und --production param entfernen, z:

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

dann Ihre Website neu zu starten.

Alle weiteren Bedenken, bitte zögern Sie nicht, lassen Sie es mich wissen.

+0

Das Ändern von process.env.ATLASBOARD_PORT zu process.env.PORT und die Änderung in package-dependency-manager.js haben den Trick für mich gemacht. Vielen Dank! – henningst

+0

Ich schrieb einen kurzen Blogbeitrag darüber, wie ich das einrichten kann. http: //blog.stoverud.Nein/Beiträge/atlasboard-on-azure-webapp / – henningst