Sample Header Ad - 728x90

Node.js server with daemontools is constantly restarted

2 votes
1 answer
882 views
I want to run a Node.js server with daemontools on Debian (Jessie) but my script running under supervise is constantly restarted. This is the run script that I'm using (/etc/service/node/run): #!/bin/bash exec setuidgid nodeuser bash -c './node' The script executes the following script as user nodeuser, where I load NVM, change into my code directory, and execute the Node.js server: #!/bin/bash # Load NVM because we are in a non-interactive shell export NVM_DIR="/home/nodeuser/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # Run server cd /path/to/code exec node server.js When I start the service with sudo svc -u /etc/service/node, the process is restarted all the time and ps faux shows the following process hierarchy (the depth of the hierarchy is always changing): /bin/sh /usr/bin/svscanboot /etc/service/ \_ svscan /etc/service \_ supervise node \_ /bin/bash ./node \_ /bin/bash ./node \_ /bin/bash ./node \_ /bin/bash ./node \_ /bin/bash ./node | \_ /bin/bash ./node | \_ /bin/bash ./node | | \_ /bin/bash ./node | | \_ /bin/bash ./node | \_ /bin/bash ./node | \_ tail -n1 \_ /bin/bash ./node \_ tail -n1 Do you have an idea what's going on there? When I execute the script manually with ./run, the server starts as expected and shows its output in the console. **EDIT** I found out that the service works only after rebooting. Once I restart it with sudo svc -du /etc/service/node, it behaves like described above.
Asked by chrisklaussner (357 rep)
Oct 2, 2015, 06:12 PM
Last activity: Aug 28, 2016, 06:23 PM