Erstellen eines Start Diensts für Node. js *

Dokumentation

Fehlerbehebung

000020082

14.07.2017

Diese Schritte zeigen Ihnen, wie Sie einen Systemdienst für eine Node. js *-Datei (blink-Beispiel) erstellen. Sie können den Dienst dann beim Booten starten.

Für dieses Beispiel erstellen wir einen Systemdienst namens blinkjs. Dieser Dienst führt beim Booten ein blink Beispiel auf dem Intel® Edison Kit for Arduino* aus. Sie finden das JavaScript blink-Beispiel unter GitHub.

Führen Sie die folgenden Schritte aus, um die Dienstdatei für Node. js zu erstellen:

  1. Erstellen und benennen Sie die Dienstdatei mit der Erweiterung. Service im Verzeichnis/etc/System/System/:

    Root @ myedison:~ # VI blinkjs. Service/etc/systemd/System

  2. Fügen Sie den folgenden Inhalt in die Datei ein, und ändern Sie ihn, um die Anforderungen Ihres Diensts zu erfüllen (keine Kommentare enthalten):

    EInheit]
    Description = Blink JavaScript
    //Brief Beschreibung Ihres Systemdienstes

    SErvice]
    ExecStart =/usr/bin/Node /Blink.js
    //Commands mit den Argumenten, die beim Starten des Diensts ausgeführt werden

    Restart = immer //Service neu gestartet, unabhängig davon, ob es sauber beendet wurde oder nicht, wurde durch ein Signal abgebrochen oder ein Timeout erreicht.

    Environment = NODE_PATH =/usr/lib/node_modules //Path to Command es Binary

    iNstallieren]
    WantedBy = Multi-User. Target

  3. Verwenden Sie den Befehl systemctl Start , um den Dienst zu starten:

    Root @ myedison:~ # systemctl Start blinkjs. Service

    blinkjs. Service: Blink JavaScript mit Node. js

    Geladen: geladen (/etc/systemd/System/blinkjs.Service; deaktiviert)

    Aktiv: aktiv (Running) seit Mi 2015-08-05 17:44:45 UTC; 137ms vor 2 Tagen

    Haupt-PID: 400 (Knoten)

    CGroup:/System.Slice/blinkjs.Service

    +-400/usr/bin/Node/Home/Root/Blink.js

    Aug 05 17:44:45 edison1_ww 25.5 systemd [1]: gestartet blinken JavaScript mit Node. js.

  4. Um den Status des Systemdiensts zu überprüfen, verwenden Sie den Befehl systemctl Status :

    Root @ myedison:~ # systemctl Status blinkjs. Service

  5. Damit der Dienst beim Booten gestartet werden kann, verwenden Sie den Befehl systemctl Enable :

    Root @ myedison:~ # systemctl Enable blinkjs. Service

  6. Um den Systemdienst neu zu starten, wenn Änderungen an der Dienstdatei vorgenommen werden, verwenden Sie den Befehl systemctl Daemon-Reload :

    Root @ myedison:~ # systemctl Daemon-Reload