Containers and Serverless Recommendation Guide
AWS Elastic Beanstalk
Since you selected "I want to run a basic web service” we recommend AWS Elastic Beanstalk as the best place for you to start.
What is AWS Elastic Beanstalk?
AWS Elastic Beanstalk is a service for deploying and scaling web applications and services. Upload your code and Elastic Beanstalk automatically handles the deployment—from capacity provisioning, load balancing, and auto scaling to application health monitoring.
Why are we recommending AWS Elastic Beanstalk?
If you are new to AWS, AWS Elastic Beanstalk is the fastest way to get web applications up and running. You can simply upload your application code, and the service automatically automates capacity provisioning, load balancing, auto scaling, and application deployment, creating an environment that runs a version of your application. The AWS Toolkit for Visual Studio and the AWS Toolkit for Eclipse allow you to deploy your application to AWS Elastic Beanstalk and manage it without leaving your IDE. Once your application is running, Elastic Beanstalk automates management tasks–such as monitoring, application version deployment, a basic health check–and facilitates log file access. Elastic Beanstalk uses core AWS services such as Amazon Elastic Compute Cloud (EC2), Amazon Elastic Container Service (ECS), AWS Auto Scaling, and Elastic Load Balancing (ELB) to easily support applications that need to scale to serve millions of users.
While this is our recommended starting point, other services could also suit your needs and you can always try a different service if your use case changes or if AWS Elastic Beanstalk does not seem optimal for your use case.

Frequently Asked Questions
-
What type of app artifacts can you bring to the service?AWS Elastic Beanstalk supports source code in supported languages and runtimes, container images from registries, Dockerfiles, and Docker Compose files to build images.
-
Where can you run your application outside of an AWS region?Only within an AWS Region.
-
What class of applications does the product support?AWS Elastic Beanstalk is ideal for building web applications, websites, API services, and web back-ends with simplified infrastructure management. It supports Java, .NET, PHP, Node.js, Python, Ruby, Go, and Docker applications, allowing developers to focus on code rather than server configuration. Beyond web applications, AWS Elastic Beanstalk can also host long-running and background task.
-
How does the product charge for usage?
There is no additional charge for Elastic Beanstalk. You only pay for the AWS resources needed to store and run your applications (such as EC2 instances and S3 buckets). For more information, please visit AWS Elastic Beanstalk Pricing.
-
Is AWS Elastic Beanstalk very opinionated in how it works? Does it have limitations that I could avoid using lower level orchestrators?AWS Elastic Beanstalk provides managed platforms that simplify application deployment while still offering substantial customization options. While it comes with recommended defaults, you can customize many aspects of your environment using configuration files. If you need even more control over your infrastructure, you might consider using Amazon ECS for container orchestration, or directly managing EC2 instances for maximum flexibility.
Let's get started with AWS Elastic Beanstalk

Get started with AWS Elastic Beanstalk
AWS Elastic Beanstalk is a service for deploying and scaling web applications and services. Upload your code and Elastic Beanstalk automatically handles the deployment—from capacity provisioning, load balancing, and auto scaling to application health monitoring.

AWS Elastic Beanstalk workshop
In this hands-on workshop, you will learn how to deploy and manage .NET applications on AWS Elastic Beanstalk.

AWS Elastic Beanstalk platforms
Find detailed listings of current AWS Elastic Beanstalk platform versions. Also find lists of historical platform versions and the date ranges they were current.

AWS Elastic Beanstalk documentation
Read the overview of AWS Elastic Beanstalk, detailed feature descriptions, and instructions on how to use the service and deploy web applications.

AWS Elastic Beanstalk developer guide
Read conceptual and detailed instructions for using AWS Elastic Beanstalk to quickly deploy and manage applications in the AWS cloud without worrying about the infrastructure that runs those applications.