GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Node.js-Skript konnte nicht mit systemctl gestartet werden

Ich glaube nicht, dass Sie so eine Node-App starten. Sie geben hier nur die JavaScript-Datei an:

ExecStart=/var/www/laporan/nodeserver/server.js

Sie müssen auch die ausführbare Knotendatei angeben, etwa wie folgt, wenn sich der Knoten im Pfad befindet.

ExecStart= node /var/www/laporan/nodeserver/server.js

Wenn sich der Knoten nicht im ausführbaren Pfad befindet, müssen Sie ihn angeben:

ExecStart=/usr/local/bin/node /var/www/laporan/nodeserver/server.js

Um den Fehler klarzustellen, setzen Sie den Knoten ausführbarer Pfad ist falsch. Um den richtigen Pfad zu erhalten, können Sie

verwenden
$ which node // /usr/bin/node

In meinem Fall ist es anders, ich bekomme /usr/bin/node als Pfad so in dir ExecStart Kopieren Sie den Knotenpfad von der Befehlszeile

ExecStart=/usr/bin/node /var/www/laporan/nodeserver/server.js

Linux
  1. Laufendes Skript mit „. “ Und mit „Quelle“?

  2. Prozessstartzeit mit Zeitzone?

  3. Timeout des Systemctl-Dienstes beim Start?

  4. Shell-Skript ändert Verzeichnis mit Variable

  5. Pfad zur Node.js-Installation in Ubuntu

Verwalten Sie mehrere Dienstinstanzen mit systemctl

So schreiben Sie ein Bash-Skript mit Beispielen

Erste Schritte mit systemctl

Basisname mit Leerzeichen in einem Bash-Skript?

So erhalten Sie Systemstatistiken mit node.js

Fügen Sie dem Pfad ein Bash-Skript hinzu