2016-04-18 9 views
1

Ich habe eine Loopback-API entwickelt und möchte sie zu einer Test-Instanz bereitstellen (wahrscheinlich Heroku oder Digital Ocean).Wie man Loopback einsetzt? Brauchen Sie eine einfache Erklärung

Es ist ziemlich kompliziert zu verstehen, wie man es einsetzt. Es scheint viele Lösungen zu geben, von StrongLoop Process Manager bis hin zu einem einfachen Node.js Server ... Die Informationen sind nicht sehr verdaulich, also könnte mir jeder helfen zu verstehen, welche Möglichkeiten ich habe, es zu implementieren und was die Vor-/Nachteile sind von jedem.

Ich lese gerade einige Dokumentation, fühle mich aber ein wenig verloren. Einige Beiträge von Leuten, die es bereits eingesetzt haben, wären großartig, ich kann nicht der Einzige sein, der sich an diesem Punkt verwirrt fühlt.

Antwort

4

Der erste Unterschied besteht, wenn Sie planen, es auf einem Server (Digital Ocean) oder als Hosted Node-Prozess (Heroku) zu hosten.

Auf Heroku müssen Sie ihre Vorgehensweise verstehen, aber wenn Sie das einmal getan haben, können Sie sich viele Sorgen über das Infrastrukturmanagement ersparen. Dies würde StrongPM nicht beinhalten und Heroku ist bereits ein eigener Prozessmanager. Wenn Sie grundlegendes Verständnis von Git haben und keine fortgeschrittenen Dinge verwenden, z. mit Betriebssystemabhängigkeiten ist dies auf lange Sicht am einfachsten. Ich habe keine Erfahrung, aber es scheint, dass Heroku direkt von einem Git-Repository arbeitet, daher ist die Arbeit mit Git eine Voraussetzung für dieses Modell.

Auf einem Server (zB Digital Ocean) müssen Sie sich für ein Betriebssystem entscheiden und das mit Abhängigkeiten einrichten, Knoten, DBs, ect installieren. Sie können Ihren Knotenprozess einmal mit einem Prozessmanager verwalten, z. StrongPM, obwohl ich mich damit auseinandergesetzt habe und vor langer Zeit beschlossen habe, mit PM2 als Prozessmanager zu arbeiten, was ich sowohl anfänglich als auch auf lange Sicht viel einfacher zu verstehen und zu handhaben fand. Aber das Basic ist das gleiche wie auf Ihrem lokalen Rechner, Sie brauchen es nur, um "node server.js" auszuführen, ein Prozessmanager gibt nur noch mehr Schnickschnack (automatischer Neustart bei Fehler, Überwachung und wiederholbarer Prozessstart, wobei der Hauptsachen).

+0

OK groß, habe ich bekommen, dass großen Unterschied nicht. Ich habe Heroku ausprobiert und Sie haben recht, es spart mir Sorgen, aber schafft andere ... Ich versuche eine all-in-code-Infrastruktur zu haben und Docker scheint der beste Weg zu sein, mit dem DB + Loopback umzugehen, flexibel zu sein und habe immer noch meinen ganzen Code versioniert. Vielen Dank für die Antwort, ich schätzte – kartsims

+0

Was ist mit der Handhabung von Bereitstellungen auf Digital Ocean durch StrongLoop Process Manager (SLC), die LoopBacks Dokumentation zu suggerieren scheint? https://docs.strongloop.com/display/SLC/Deploying+applications+with+slc – Qasim

2

Ich habe dies viele Male getan, und es kann ziemlich einfach sein. Das komplizierteste Bit ist das Einrichten der Datenbank. Für Heroku können Sie keinen Dateisystemspeicher verwenden (z. B. alles in einer db.json-Datei speichern), da das Dateisystem nicht persistent ist. Sie benötigen also eine externe Datenbank, und zum Glück bietet Heroku einige davon als Addons an, z. mLab für MongoDB, die ich sehr empfehlen kann.

Nachdem Sie die Datenbank bereitgestellt haben, vergewissern Sie sich, dass die richtigen Details für die Datenquelle konfiguriert sind. Hier ist ein Beispiel von einer Heroku gehostete App mLab (ich habe xxxx-ed aus ein paar Details):

"db": { 
    "host": "ds043471-a0.mongolab.com", 
    "port": 43471, 
    "database": "heroku_appxxxxxxx", 
    "username": "heroku_appxxxxxxx", 
    "password": "xxxxxxxxxx", 
    "name": "KaranMongo_live", 
    "connector": "mongodb" 
} 

Sie auch diese lokal jetzt testen können (obwohl Best Practice ist getrennt Datenquelle json-Dateien zu verwenden für Entwicklung/Produktion).

Als nächstes müssen Sie ein paar Anpassungen vornehmen Ihre Anwendung "Heroku-ready" zu machen:

  1. die Strongloop buildpack hinzufügen, dh heroku buildpacks:set https://github.com/strongloop/strongloop-buildpacks.git
  2. erstellen procfile, die nur eine Leitung benötigt: web: slc run

Dann drücken Sie auf Ihre Heroku App (vorausgesetzt, Sie die Fernbedienung richtig eingestellt haben):

git push heroku master 

Magie. Es baut und entfaltet.

+0

Ist es möglich, Loopback auf meinem eigenen Server zu verwenden? Alle angebotenen Optionen sind Zahlungen und Probezeit. Ich meine, dass Loopback nicht kostenlos ist, ist es ein kommerzieller Rahmen? – jcarlosweb

+1

Ja, Sie können Loopback definitiv auf Ihrem eigenen Server verwenden. Sie führen es einfach wie jeden anderen Node-Prozess aus. PM2 Ist gut dafür. – Anselan

Verwandte Themen