By default Beanstalk is setup with Passenger. Can I easily configure Beanstalk to use Thin?
Related
There is a NodeJS application hosted in the AWS EC2 instance. We need to configure HTTPS for the instance of all ports like 3000,1337 and 8080 for Call service through our Android apps.
here We are puzzled to configure https://domainname:3000,https://domainname:1337 and https://domainname:8080. Please suggest to us how we can solve this using Nginx or AWS load balancer.
Please check below useful links for deployed node in AWS
https://sumantmishra.medium.com/how-to-deploy-node-js-app-on-aws-with-github-db99758294f1
https://ourcodeworld.com/articles/read/977/how-to-deploy-a-node-js-application-on-aws-ec2-server
https://aws.plainenglish.io/deploying-a-nodejs-application-in-aws-ec2-c1618b9b3874
I am googling a lot to be sure the best approach to deploy MERN stack app on aws ec2 ... in some examples Nginx being used in server (expressjs) part and in some cases its being used for Recatjs part and the express js part is just hosted in node , React even can be hosted in s3 I guesss .. so what is the best approach however?
Without configuring the server yourself in EC2, you can simply use managed Node.js hosting provided by AWS Elastic Beanstalk.
If you want to directly configure EC2 instance and deploy, you can follow this tutorial to do the deployment https://jasonwatmore.com/post/2019/11/18/react-nodejs-on-aws-how-to-deploy-a-mern-stack-app-to-amazon-ec2
I'm deciding how to deploy my Nodejs API to AWS Elastic beanstalk. I have 2 options: deploy it as a normal nodejs service or deploy the api dockerized.
In which situations is it more recomendable to use docker over a normal nodejs service? (Giving the fact that I will use Elastic beanstalk)
Running your NodeJS as a Docker container in Elastic Beanstalk will definitely give you more control over your application.
However, it depends how much time you want to invest. Their maybe slightly more time in deploying with Docker, especially if you haven't used it before.
In which situations is it more recomendable to use docker over a
normal nodejs service? (Giving the fact that I will use Elastic
beanstalk)
First, if you really interested to run docker container in AWS, then ECS is what you need to run your application, lot of reason to run docker in ECS over elastic beanstalk
Serverless (faragate)
Scaling
Container management
Ci/CD with code deploy etc
Amazon Elastic Container Service (Amazon ECS) is a fully managed container orchestration service. Customers such as Duolingo, Samsung, GE, and Cook Pad use ECS to run their most sensitive and mission-critical applications because of its security, reliability, and scalability.
AWS ECS getting-started
docker is recommended if you manage multiple environments in short as its not simple question to answer but better to go with Docker as this what future deman, if you just want to want to run dev like environment then elastic beanstalk is fine.
Documentation exists for enabling insecure web sockets on AWS Elastic Beanstalk with an ALB, however, nothing appears to exist that shows how to enable secure websockets (wss://) on Elastic Beanstalk.
Looking for the .ebextensions configuration for enabling secure websockets on Elastic Beanstalk for a node app using the ws library.
I'm not sure where and how to start with AWS for deploying, very confused at the moment. It seems like I deploy my server on Elastic Beanstalk, but then where does my build and static files go? S3 I'm guessing? Should I just follow the tutorial for Beanstalk? Thanks!
You can use Elastic Beanstalk to host your entire application including Static files where it will resides in the web server.
The downside of it is the performance for large scale applications where you can leverage AWS S3 and CloudFront. So if you are a starter with AWS, then I would recommend to consider Elastic Beanstalk for entire application hosting for the moment.