nodePush - Handbuch für Administratoren

    • Offizieller Beitrag

    Hallo,


    die Anleitung soll Ihnen dabei helfen nodePush als Administrator korrekt einzurichten. Sie erklärt, wie Sie den Push-Server starten, aktualisieren und so konfigurieren, dass er zuverlässig läuft. Gerne helfen wir Ihnen, falls Ihnen die Einrichtung Probleme bereitet. Denken Sie daran eventuelle Ausgaben zur Verfügung zu stellen, da dies die Problemdiagnose erleichtert.


    Voraussetzungen

    • Ein Server mit der Möglichkeit zur Installation eigener Software (meist SSH-Zugang)
    • node.js ab Version 0.10.0
    • Entwicklungsbibliotheken von node.js
    • npm

    Sollten diese noch nicht auf dem Server installiert sein, so können Sie diese in vielen Fällen über die Paketverwaltung Ihres Betriebsystems beziehen oder alternativ auf der offiziellen Homepage herunterladen.


    Einrichtung von nodePush

    • Installieren Sie das nodePush-Paket in Ihrer Community.
    • Verbinden Sie sich via SSH mit Ihrem Server
    • Wechseln Sie in das Verzeichnis: wcf/acp/be.bastelstu.wcf.nodePush
    • Kopieren Sie config.js.template nach config.js und passen Sie die Datei nach Ihren Wünschen an.
      • Die Standardkonfiguration ist bereits so gewählt, dass diese die passenden Einstellungen für die meisten Benutzer enthält. Passen sie lediglich den Port des outbound-Sockets nach Wunsch an.
      • Unter Windows müssen beide Sockets useTCP: true gesetzt haben. Ein Unix-Domain-Socket funktioniert dort nicht
      • user und group sind nur relevant, falls der Dienst als root gestartet wird. Wir empfehlen aus Sicherheitsgründen den direkten Start unter dem gewünschten Benutzer. Andernfalls empfiehlt sich, dass der Benutzer der gleiche ist, wie der Benutzer, unter dem die PHP-Skripte ausgeführt werden.
      • Achten Sie darauf den inbound-Socket nur für eigene Dienste erreichbar zu machen
    • Installieren Sie die Abhängigkeiten via npm install. Dies kann einige Zeit dauern.
    • Nun können Sie den nodePush-Dienst via npm start starten.
      • Falls Sie nun den Outbound-Socket im Browser abrufen sollten Sie eine Statusseite erhalten
    • Sollte der erste Start erfolgreich gewesen sein, so beenden Sie den nodePush-Dienst nun wieder, indem sie STRG+C auf Ihrer Tastatur drücken.
    • Je nach Präferenz können Sie den nodePush-Dienst nun beispielsweise via „GNU screen“ im Hintergrund starten und laufen lassen.

      • Wir empfehlen die Verwendung von forever oder pm2 um den Dienst zu starten.
    • Tragen Sie nun die Adresse des Outbound-Sockets in der Administrationsoberfläche Ihrer Community ein: „System → Optionen → Allgemein → System → Push Server → Push Server Host (nodePush)“

      • Achten Sie darauf, dass Sie hier das richtige Protokoll angeben (http oder https), im Allgemeinen ist es „http“
      • Sofern Sie nodePush via TLS erreichbar machen möchten, müssen Sie einen „Reverse Proxy“ (wir empfehlen den nginx) einsetzen
      • Falls Sie Verbindungen zu Ihrer Website via TLS verschlüsselt anbieten, sollten Sie auch nodePush via TLS erreichbar machen, da aktuelle Browser gegebenenfalls ein Laden von nodePush aufgrund von „mixed content“ ablehnen
    • nodePush sollte nun funktionsfähig sein. Lesen Sie unbedingt noch die „Dos und Don'ts“, um hilfreiche Hinweise zum sicheren und zuverlässigen Betrieb von nodePush zu erhalten!

    Dos und Don’ts


    Das ist cool:

    • node.js regelmäßig aktualisieren ✔
    • Den nodePush-Dienst nach einem Update neu zu starten ✔
    • Den nodePush-Dienst beim Serverstart mit zu starten ✔
    • nodePush hinter einem Reverse-Proxy betreiben, um auch TLS zur Verfügung zu stellen ✔

    Das ist uncool:

    • nodePush als root ausführen ✘
    • Den inbound-Socket für jedermann erreichbar machen ✘
    • Offizieller Beitrag

    Hallo,


    um nodePush korrekt zu aktualisieren gehen Sie wie folgt vor:

    • Installieren Sie das nodePush-Paket in Ihrer Community.
    • Verbinden Sie sich via SSH mit Ihrem Server
    • Wechseln Sie in das Verzeichnis: wcf/acp/be.bastelstu.wcf.nodePush
    • Aktualisieren Sie die Abhängigkeiten via npm install. Dies kann einige Zeit dauern.
    • Starten Sie den nodePush-Dienst neu
    • nodePush sollte nun erfolgreich aktualisiert sein