I’ve been chiselling away at setting up a staging server for the Remixer machine, and it was all going so well. I set up a NodeJS environment, and hooked up a deployment from a github repo. I used a post hook to run a build on repo update. As far as I can tell, that works fine. I’m using Nuxtjs, which allows Server Side Rendering of Vuejs apps. After a few issues with getting Nuxt to build cleanly, it does. So npm libraries are installed. On setting up the NodeJS environment, I’ve gone for pm2 as the process manager, as I’d used it before. I’ve setup pm2’s “ecosystem.config.js” file to point to the Nuxt js file (as instructed by Nuxt’s deployment guide: Deploy Nuxt using PM2 - NuxtJS ). I can get a pm2 status, which tells me the app is running, and not falling over. After another dig around, I see that the pm2 node process is listening on port 3000. That’s nuxt’s default port, and that’s all good. I’ve also bound a subdomain to the environment, and added the LetsEncrypt addon, which in turn added a public IP. I came across this Reclaim Community thread Redirect traffic from public port to an a different container port and so I set the JELASTIC_EXPOSE variable to 3000.
But for all of that, I haven’t been able to get any response when I stick the subdomain (or the environment address) in the browser, either with or without the internal port (3000).
I tried removing the Public IP, and turning the SLB on, and at least got a clean 502 error page. So I’m guessing that the 3000 port isn’t being exposed properly.
Can you shed any light on my deployment misdemeanors?