2017-04-05 4 views
-1

Ich versuche, Zoho Mail mit Nodejs-Anwendung mit Hilfe von nodemailer zu integrieren. Ich kann dies lokal tun und Mails werden gesendet. Aber als ich versuchte, den gleichen Code zu Openshift zu schieben, ist es mit Fehler Fehler:required ('nodemailer') verursacht die Bereitstellung bei OpenShift zum Fehlschlagen

port 8080 is not available to deploy.

Ich habe versucht, verschiedene Kombinationen den Grund dafür herauszufinden, und sobald ich var nodemailer = require('nodemailer'); entfernt, wird die Anwendung bereitgestellt.

Dependency in package.json {"nodemailer": "^3.0.2"}

Hat noch jemand ähnliche Probleme?

+1

Bitte lesen Sie [Unter welchen Umständen kann Ich füge "dringende" oder andere ähnliche Sätze zu meiner Frage hinzu, um schnellere Antworten zu erhalten?] (Https://meta.stackoverflow.com/q/326569) - die Zusammenfassung ist, dass dies kein idealer Weg ist, um Freiwillige anzusprechen und ist wahrscheinlich kontraproduktiv, um Antworten zu erhalten. Bitte unterlassen Sie das Hinzufügen zu Ihren Fragen. – halfer

+0

Der Fehler bezieht sich nicht auf NodeMailer, sondern auf eine doppelte Verwendung des 8080-Ports bei openshift. – throrin19

+0

dieser Fehler möglicherweise generisch, http://StackOverflow.com/Questions/31511724/Application-Failed-To-Start-port-8080-not-available –

Antwort

0

Da wir fanden das war, dass nodemailer Mindest NodeJS Version nicht erfüllt werden, auf Openshift den Knoten Version zu aktualisieren würde das Problem beheben, die Version Verwendung rhc zu aktualisieren, um die vm und führen Sie die folgenden Änderungen,

zu verbinden Node.js

Standardmäßig wird die Node.js-Version durch Abfrage von semver.io/node/unstable ermittelt.

Eine andere URL kann entweder über NODE_VERSION_URL Umgebungsvariablen angegeben werden oder durch .openshift/NODE_VERSION_URL Marker in Ihrer Anwendung Repository festlegen. Zum Beispiel würden Sie die neueste 6.xx (6.10.2 ab heute) erhalten, indem diese in NODE_VERSION_URL Variable oder setzen .openshift/NODE_VERSION_URL Marker:

https://semver.io/node/resolve/6 

Wenn Sie ein verwenden Nicht standardmäßige Node.js-Version und Sie planen, die Anwendung über mehrere Gänge zu skalieren, müssen Sie die Umgebungsvariable verwenden.

npm

Standardmäßig wird die npm Version durch Ausführen npm Ansicht npm Version bestimmt.

Eine andere npm-Version kann entweder über die Umgebungsvariable NPM_VERSION_URL oder durch Festlegen des Markierungswerts .openshift/NPM_VERSION_URL in Ihrem Anwendungsrepository angegeben werden. Zum Beispiel würden Sie die aktuelle 3.x (3.10.10 ab heute) erhalten, indem diese Umsetzung in NPM_VERSION_URL Variable oder .openshift/NPM_VERSION_URL Marker:

https://semver.io/npm/resolve/3 
Verwandte Themen