Digital Ocean Ubuntu Führen Sie ServiceStack als Daemon aus

551
jaxmeier

Alles,

Ich habe meine ServiceStack-Konsolen-App erfolgreich auf meinem DigitalOcean Ubuntu MEAN Stack-Droplet installiert und kann sie von der Befehlszeile aus mit Mono ausführen. Wenn ich dies mache, ist meine App über Postman von meinem Laptop aus zugänglich.

Ich habe auch versucht, Upstart zu verwenden, um meine App als Dämon auszuführen. Aus der Protokollierung kann ich ersehen, dass sie beim Neustart erfolgreich gestartet wird. Wenn ich jedoch nicht als root angemeldet bin und meine Konsolen-App über die Befehlszeile gestartet habe, kann ich nicht auf die Konsolen-App zugreifen, wenn sie als Dämon ausgeführt wird. Ich habe dies mit aktiviertem ufw versucht (konfiguriert, den von mir verwendeten Port zuzulassen) und deaktiviert, und es macht keinen Unterschied. Ich kann sowohl in syslog als auch in GeoAPIConsole.log sehen, dass die Konsolen-App an Port 1337 ausgelöst und gestartet wurde, aber ich kann immer noch nicht von außen darauf zugreifen.

Ich bin ziemlich sicher, dass dies ein Berechtigungsproblem in meiner Upstart-Konfigurationsdatei für meine Konsolen-App ist, aber da ich für Linux brandneue bin, ist mir unklar, wie ich diese Konsolen-App als Daemon verfügbar machen kann.

Jede Hilfe wird sehr geschätzt ...

Bruce

# ServiceStack GeoAPIConsole Application  # description “GeoAPIConsole” # author “Bruce Parr”  setuid root # start on started rc start on started networking stop on stopping rc  respawn  exec start-stop-daemon --start --exec /usr/bin/mono /var/console/GeoAPIConsole.exe 
2

1 Antwort auf die Frage

1
jaxmeier

Das hat funktioniert. Ich fügte einen Benutzer Geoapiconsole und die Schalter -S und -c hinzu

# ServiceStack Example Application  description "ServiceStack Example" author "ServiceStack"  start on started rc stop on stopping rc  respawn  exec start-stop-daemon -S -c geoapiconsole --exec /usr/bin/mono /var/console/GeoAPIConsole.exe