Ran into a similar issue and found this article: https://medium.com/grano/the-fault-in-our-responses-bytes-remaining-to-read-91efe0553676
A custom error handler that calls next() although the response had been sent already caused this as the last next() is the default handler from Express that will disconnect the socket immediately. Redis in the meantime may ...
You have to add the below in the environment variable of the logged user(root) in which you are trying to run pm2 command and then it will works
nvm is not a real program. It's a bash function that gets loaded in the user's .profile, .bashrc, or ... so sudo doesn't automatically pick it up from the $PATH like most other programs.
You can create a symbolic link and then try to access it
sudo ln -s "/home/otheruser/.nvm/versions/node/v5.2.0/bin/pm2" "/usr/local/bin"
If you want to have non-exiting service, with npm start you have to define a CI variable which prevents quitting after reading EOF. This solution can be run in users session as well. The important part from my service file is Environment=CI=True.
ExecStart=/usr/bin/npm run start --prefix /home/ondrej/project
The issue you encounter is with the ports not allowed by Firewall. Please set up the firewall setting to allow port 9999, make it open. If you're not able to do that ask a hosting support to help with it.
What control panel do you use?