## AWS Elastic Beanstalk - Node.js ### Prerequisites 1. make sure the node.js application has a _npm start_ command specified in the __package.json__ file like the following example ``` { "name": "application-name", "version": "0.0.1", "private": true, "scripts": { "start": "node app" }, "dependencies": { "express": "3.1.0", "jade": "*", "mysql": "*", "async": "*", "node-uuid": "*" } ``` 2. zip the application, and make sure to not zip the parent folder, only the files together, like: ``` \Parent - (exclude the folder itself from the the zip) - file1 - (include in zip) - subfolder1 (include in zip) - file2 (include in zip) - file3 (include in zip) ``` ### Solution 1. Create a "New Environment" 2. Select Environment => _Web Server Environment_ 3. Fill the Create a web server environment section a. Fill the "Application Name" 4. Fill the Environment information section a. Fill the "Environment Name" b. Domain - "Leave for autogenerated value" 5. Platform a. Choose Platform => _node.js_ 6. Application Code => upload the Zipped Code from your local computer 7. Create Environment 8. Wait for the environment to come up 9. Check the website a. Navigate to the _Applications_ tab, b. select the recently created node.js app c. click on the URL - highlighted ### Documentation [Elastic Beanstalk / Node.js getting started](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/nodejs-getstarted.html)