2012-03-25 6 views
3

Ich habe Probleme beim Bereitstellen der Express-App auf dem Knotenpunkt.Express-App kann nicht auf Nodesster ausgeführt werden

Nach einer erfolgreich verlaufenen Standard Hallo Welt app von nodester laufen lief ich die folgenden Befehle auf nodester CLI

nodester npm installieren express

Danach ich die Express auf dem lokalen git meiner App installiert

npm install express 
express 
mv app.js server.js // Changed the port from 3000 to the port given to me 
git add . 
git commit -m 'message' 
git push origin master 

ich scheinen alle Anweisungen von verschiedenen Blogs gegeben haben gefolgt, aber wenn ich die uRL getroffen (http: // dlq .nodester.com) die App wird offline angezeigt.

Auch wenn das Ausführen der gleichen App lokal die Aufgabe erfüllt. d. h. node server.js führt die App auf meiner lokalen Seite aus (die URL wird auf der Express-Seite angezeigt). Die gleiche App scheint nicht zu funktionieren, wenn sie auf den Knoten gedrängt wird.

freundlicher

Antwort

2

-Update helfen:

A Nodester Core-Entwickler (alejandromg im IRC) einen Blick auf Ihr Problem genommen hat. Sie haben ein Zusammenführungsproblem in Ihrem Git-Repository. Es scheint sich um einen Merge-Konflikt gehandelt zu haben. Sie können den Kernpunkt Ihres Git-Merge-Konflikts unter GitHub finden. Alejandro war so freundlich, den Konflikt auf der Nodester-Plattform zu lösen. Ihre App sollte nun einwandfrei auf http://dlq.nodester.com/ laufen.

Ich werde den Rest der Antwort als einen möglichen Weg zur Lösung dieses Problems halten.


Hallo Kollege Nodester (er)!

Nodes, als PaaS, verwendet die interne Port-Übersetzung, um zu ermöglichen, dass jede Nodes App über Port 80 läuft, so dass sie leicht aus dem Internet erreichbar ist. Da Nodester auf einer einzelnen EC2-Instanz ausgeführt wird, weisen wir Ihnen einen bestimmten Port zu. Dieser Port wird intern an deine dlq.nodester.com:80 weitergeleitet, aber deine App muss die von Nodes verwendete verwenden.

Ich bin mir bewusst, dass Sie Ihren Port geändert haben, aber versuchen Sie es mit der unten beschriebenen alternativen Methode.

Sie können auf den Port zugreifen, dem Sie zugewiesen wurden, indem Sie nodester app info dlq ausführen. Es sollte Ihnen zeigen, dass Ihre App läuft oder gestoppt ist und der Port.

Express mitzuteilen, den Anschluss zu verwenden (wie auf the Help page (check the FAQ section) erwähnt, können Sie entweder die Nummer verwenden, und codieren sie oder die Umgebungsvariable nehmen, die jede Nodester App für sich selbst zugreifen können

Diese funktionieren sollte.

app.listen(process.env['app_port'] || 80) 

oder

app.listen(process.env.port) 

die erste ermöglicht es Ihnen, die lokal auf Port zu entwickeln 80 (oder je nachdem, was Sie gewählt haben), letzteres wird ne Sie haben eine Umgebungsvariable festgelegt, die entweder eine Zeichenfolge oder eine Nummer des Ports enthält, den Sie ausgegeben haben.

Ändern Sie das, drücken Sie Ihren Code zu Nodester (was zu funktionieren scheint, bin ich froh!). Danach sollte die App automatisch starten und (hoffentlich) funktionieren. Wenn Sie immer noch Probleme haben, lassen Sie es uns hier auf dem IRC-Kanal #nodester auf irc.freenode.org wissen oder verwenden Sie die webchat client.

Zusätzliche Fehlerbehebung:

Sie scheinen falsch den nodester npm Befehl verwendet zu haben (dort durch Ihre Informationen zu urteilen). Es sollte sein:

nodester npm install dlq express 

(Dank Chris für diesen Hinweis)

+0

Was ? 'nodster npm install dlq express' ODER' npm install express' auf lokaler und dann 'git push's? –

+0

Haben Sie den letzten Teil der Antwort gelesen? Pflege weiter zu erarbeiten? Wie wäre es mit 'Knoten-App Logs DLQ' und die Ergebnisse zu veröffentlichen? – arvidkahl

+0

Und in Bezug auf Ihre NPM-Frage: Ich arbeite mit einem lokalen Nom und einem Knoten Npm installieren. Allerdings habe ich 'node_modules' in mein' .gitignore' gesetzt, damit das Repository nicht voll wird. Speicherplatz zu sparen ist eine schlaue Sache, die man auf einem PaaS machen kann, das kostenlos läuft;) Ich schlage vor, Module aus dem Knotenpunkt-Repo herauszuhalten. – arvidkahl

0

Für diejenigen, die Probleme mit: nodester npm install express

So wie ich Express läuft auf nodester bekam (aus dem Gedächtnis):

nodester app create myapp 
cd myapp 
npm install express -g  [if you don't have it yet] 
express 
mv app.js server.js 

offen server.js und hören process.env['app_port'] || 80

git add . 
git commit -m 'init express' 
git push origin master 

siehe nodestor Protokolle und suchen nach App neu gestartet

Jetzt können wir

nodester npm install express 
nodester app restart 

Und sollte die richtige Methode ist, werden Arbeitspakete für die Installation trotzdem an dieser Stelle

Verwandte Themen