That could explain it. Running two processes within one machine makes life more complicated. It works but you then have to deal with keeping both running and having one talk to the other.
Since you need (a) the node server to be running and (b) for nginx to know about it (to proxy requests to it). It would only know about it if using a custom conf file. I can’t see a mention of a custom conf being added in the listed files
Looks to me like (a) and/or (b).
I saw this thread which sounds kind of similar, in that they want nginx + express. Notice the user’s custom nginx conf being referenced at the top. That’s what you would need to run nginx and express as the conf would need some lines to tell nginx how to proxy requests to it. The reply from Fly points out that they can handle TLS for you. It is a good idea to use a proxy in front of node but in this case - since you are using a PaaS not e.g a simple VPS - you already have one:
That way your app would just run node. It’s up to you but unless there is a reason to use nginx personally I’d just run node.