#!/bin/sh set -e nginx -g 'daemon off;' & NGINX_PID=$! trap 'kill $NGINX_PID 2>/dev/null; exit' SIGTERM SIGINT SIGQUIT shutdown() { kill $NGINX_PID 2>/dev/null exit } while true; do node /server/server.js & NODE_PID=$! trap 'kill $NODE_PID $NGINX_PID 2>/dev/null; exit' SIGTERM SIGINT SIGQUIT wait $NODE_PID EXIT_CODE=$? if [ $EXIT_CODE -eq 0 ] || [ $EXIT_CODE -eq 143 ] || [ $EXIT_CODE -eq 130 ] || [ $EXIT_CODE -eq 137 ]; then shutdown fi echo "Server exited with code $EXIT_CODE, restarting in 1 second..." sleep 1 done