Elastic Beanstalk
Last updated
Last updated
Elastic Beanstalk is a Platform as a Service environment which can create and manage infrastructure for application code.
AWS Elastic Beanstalk provides several options for how deployments are processed, including deployment policies (All at once, Rolling, Rolling with additional batch, Immutable, and Traffic splitting) and options that let you configure batch size and health check behavior during deployments
You can add AWS Elastic Beanstalk configuration files (.ebextensions
) to your web application's source code to configure your environment and customize the AWS resources that it contains.
Configuration files are YAML- or JSON-formatted documents with a .config
file extension that you place in a folder named .ebextensions
and deploy in your application source bundle.
You can use an existing Elastic Beanstalk environment as the basis for a new environment by cloning the existing environment.
For example, you might want to create a clone so that you can use a newer version of the platform branch used by the original environment's platform.
Elastic Beanstalk configures the clone with the same environment settings used by the original environment.
By cloning an existing environment instead of creating a new environment, you don't have to manually configure option settings, environment variables, and other settings.
Elastic Beanstalk also creates a copy of any AWS resource associated with the original environment.
However, during the cloning process, Elastic Beanstalk doesn't copy data from Amazon RDS to the clone.
After you create the clone environment, you can modify environment configuration settings as needed.
AWS Elastic Beanstalk can launch Docker environments by building an image described in a Dockerfile
or pulling a remote Docker image.
If you're deploying a remote Docker image, you don't need to include a Dockerfile
. Instead, if you are also using Docker Compose, use a docker-compose.yml
file, which specifies an image to use and additional configuration options.
If you are not using Docker Compose with your Docker environments, use a Dockerrun.aws.json
file instead.