Menu
AWS Elastic Beanstalk
Developer Guide (API Version 2010-12-01)

Elastic Beanstalk Supported Platforms

Elastic Beanstalk provides platforms for programming languages (Java, PHP, Python, Ruby, Go), web containers (Tomcat, Passenger, Puma) and Docker containers, with multiple configurations of each.

Elastic Beanstalk provisions the resources needed to run your application including one or more Amazon EC2 instances. The software stack running on the Amazon EC2 instances depends on the configuration. In a configuration name, the version number refers to the version of the platform configuration.

The solution stack name listed beneath the configuration name can be used to launch an environment with the EB CLI, Elastic Beanstalk API, or AWS CLI. Solution stack names can also be retrieved from the service with the ListAvailableSolutionStacks API (aws elasticbeanstalk list-available-solution-stacks in the AWS CLI). This operation returns all of the solution stacks that you can use to create an environment, including stacks for the latest platform configurations (listed on this page), and any previous versions that you have used in the past.

All current Linux-based platform configurations run on Amazon Linux 2017.03 (64-bit). You can customize and configure the software that your application depends on in your Linux platform. Learn more at Customizing Software on Linux Servers. Detailed release notes are available for recent releases at aws.amazon.com/releasenotes.

Packer Builder

Packer is an open-source tool for creating machine images for many platforms, including AMIs for use with Amazon EC2.

Configuration and Solution Stack Name

AMI

Packer Version

Elastic Beanstalk Packer Builder version 2.3.0

64bit Amazon Linux 2017.03 v2.3.0 running Packer 1.0.0

2017.03.1

1.0.0

For information on previous configurations, see Packer Platform History.

Single Container Docker

Docker is a container platform that allows you to define your own software stack and store it in an image that can be downloaded from a remote repository. Use the Single Container Docker platform if you only need to run a single Docker container on each instance in your environment. The single container configuration includes an nginx proxy server.

See Deploying Elastic Beanstalk Applications from Docker Containers for more information about the Docker platform.

Configuration and Solution Stack Name

AMI

Docker Version

Proxy Server

Single Container Docker 17.03 version 2.7.1

64bit Amazon Linux 2017.03 v2.7.1 running Docker 17.03.1-ce

2017.03.1

17.03.1-ce

nginx 1.10.3

For information on previous configurations, see Docker Platform History.

Multicontainer Docker

Docker is a container platform that allows you to define your own software stack and store it in an image that can be downloaded from a remote repository. Use the Multicontainer Docker platform if you need to run multiple containers on each instance. The Multicontainer Docker platform does not include a proxy server.

See Deploying Elastic Beanstalk Applications from Docker Containers for more information about the Docker platform.

Configuration and Solution Stack Name

AMI

Docker Version

ECS Agent

Multicontainer Docker 17.03 version 2.7.2

64bit Amazon Linux 2017.03 v2.7.2 running Multi-container Docker 17.03.1-ce (Generic)

2017.03.1

17.03.1-ce

1.14.3

For information on previous configurations, see Docker Platform History.

Preconfigured Docker

Preconfigured Docker platform configurations use Docker, but do not let you provide your own Docker images. The preconfigured containers provide application frameworks that are not available on other platforms, such as Glassfish. They also provided support for Go applications prior to the release of the full fledged Go platform.

Configuration and Solution Stack Name

AMI

Platform

Container OS

Language

Proxy Server

Application Server

Docker Image

Glassfish 4.1 (Docker) version 2.7.1

64bit Debian jessie v2.7.1 running GlassFish 4.1 Java 8 (Preconfigured - Docker)

2017.03.1

Docker 17.03.1-ce

Debian Jessie

Java 8

nginx 1.10.3

Glassfish 4.1

amazon/aws-eb-glassfish:4.1-jdk8-onbuild-3.5.1

Glassfish 4.0 (Docker) version 2.7.1

64bit Debian jessie v2.7.1 running GlassFish 4.0 Java 7 (Preconfigured - Docker)

2017.03.1

Docker 17.03.1-ce

Debian Jessie

Java 7

nginx 1.10.3

Glassfish 4.0

amazon/aws-eb-glassfish:4.0-jdk7-onbuild-3.5.1

Go 1.4 (Docker) version 2.7.1

64bit Debian jessie v2.7.1 running Go 1.4 (Preconfigured - Docker)

2017.03.1

Docker 17.03.1-ce

Debian Jessie

Go 1.4.2

nginx 1.10.3

none

golang:1.4.2-onbuild

Go 1.3 (Docker) version 2.7.1

64bit Debian jessie v2.7.1 running Go 1.3 (Preconfigured - Docker)

2017.03.1

Docker 17.03.1-ce

Debian Jessie

Go 1.3.3

nginx 1.10.3

none

golang:1.3.3-onbuild

Python 3.4 with uWSGI 2 (Docker) version 2.7.1

64bit Debian jessie v2.7.1 running Python 3.4 (Preconfigured - Docker)

2017.03.1

Docker 17.03.1-ce

Debian Jessie

Python 3.4

nginx 1.10.3

uWSGI 2.0.8

amazon/aws-eb-python:3.4.2-onbuild-3.5.1

For information on previous configurations, see Preconfigured Docker Platform History.

Go

Elastic Beanstalk supports the following Go configurations:

Configuration and Solution Stack Name

AMI

Language

Proxy Server

Go 1.8 version 2.5.0

64bit Amazon Linux 2017.03 v2.5.0 running Go 1.8

2017.03.1

Go 1.8.3

nginx 1.10.3

For information on previous configurations, see Go Platform History.

Java SE

Elastic Beanstalk supports the following Java SE configurations:

Configuration and Solution Stack Name

AMI

Language

Tools

AWS X-Ray

Proxy Server

Java 8 version 2.5.2

64bit Amazon Linux 2017.03 v2.5.2 running Java 8

2017.03.1

Java 1.8.0_131

Ant 1.9.6, Gradle 2.7, Maven 3.3.3

2.0.0

nginx 1.10.3

Java 7 version 2.5.2

64bit Amazon Linux 2017.03 v2.5.2 running Java 7

2017.03.1

Java 1.7.0_141

Ant 1.9.6, Gradle 2.7, Maven 3.3.3

2.0.0

nginx 1.10.3

For information on previous configurations, see Java SE Platform History.

Java with Tomcat

Elastic Beanstalk supports the following Tomcat configurations:

Configuration and Solution Stack Name

AMI

Language

AWS X-Ray

Application Server

Proxy Server

Java 8 with Tomcat 8 version 2.6.2

64bit Amazon Linux 2017.03 v2.6.2 running Tomcat 8 Java 8

2017.03.1

Java 1.8.0_131

2.0.0

Tomcat 8.0.44

Apache 2.2.32

Java 7 with Tomcat 7 version 2.6.2

64bit Amazon Linux 2017.03 v2.6.2 running Tomcat 7 Java 7

2017.03.1

Java 1.7.0_141

2.0.0

Tomcat 7.0.78

Apache 2.2.32

Java 6 with Tomcat 7 version 2.6.2

64bit Amazon Linux 2017.03 v2.6.2 running Tomcat 7 Java 6

2017.03.1

Java 1.6.0_41

2.0.0

Tomcat 7.0.78

Apache 2.2.32

For information on previous configurations, see Tomcat Platform History.

.NET on Windows Server with IIS

You can get started in minutes using the AWS Toolkit for Visual Studio. The toolkit includes the AWS libraries, project templates, code samples, and documentation. The AWS SDK for .NET supports the development of applications using .NET Framework 2.0 or later.

Note

This platform does not support worker environments, enhanced health reporting, managed updates, bundle logs, immutable updates, or log streaming.

To learn how to get started deploying a .NET application using the AWS Toolkit for Visual Studio, see Creating and Deploying Elastic Beanstalk Applications in .NET Using AWS Toolkit for Visual Studio.

Elastic Beanstalk supports the following configurations:

Configuration basics

Configuration

Solution Stack Name

Framework

Proxy Server

Windows Server 2016 with IIS 10.0 version 1.2.0

64bit Windows Server 2016 v1.2.0 running IIS 10.0

.NET v4.7, supports runtimes 4, 2.0, 1.1 and 1.0

ASP.NET Core v1.1.2, 1.0.5

IIS 10.0

Windows Server Core 2016 with IIS 10.0 version 1.2.0

64bit Windows Server Core 2016 v1.2.0 running IIS 10.0

.NET v4.7, supports runtimes 4, 2.0, 1.1 and 1.0

ASP.NET Core v1.1.2, 1.0.5

IIS 10.0

Windows Server 2012 R2 with IIS 8.5 version 1.2.0

64bit Windows Server 2012 R2 v1.2.0 running IIS 8.5

.NET v4.7, supports runtimes 4, 2.0, 1.1 and 1.0

ASP.NET Core v1.1.2, 1.0.5

IIS 8.5

Windows Server 2012 R2 Server Core with IIS 8.5 version 1.2.0

64bit Windows Server Core 2012 R2 v1.2.0 running IIS 8.5

.NET v4.7, supports runtimes 4, 2.0, 1.1 and 1.0

ASP.NET Core v1.1.2, 1.0.5

IIS 8.5

Windows Server 2012 with IIS 8 version 1.2.0

64bit Windows Server 2012 v1.2.0 running IIS 8

.NET v4.7, supports runtimes 4, 2.0, 1.1 and 1.0

ASP.NET Core v1.1.2, 1.0.5

IIS 8

Windows Server 2008 R2 with IIS 7.5 version 1.2.0

64bit Windows Server 2008 R2 v1.2.0 running IIS 7.5

.NET v4.7, supports runtimes 4, 2.0, 1.1 and 1.0

ASP.NET Core v1.1.2, 1.0.5

IIS 7.5

Windows Server 2012 R2 with IIS 8.5

64bit Windows Server 2012 R2 running IIS 8.5

.NET v4.7, supports runtimes 4, 2.0, 1.1 and 1.0

IIS 8.5

Windows Server 2012 R2 Server Core with IIS 8.5

64bit Windows Server Core 2012 R2 running IIS 8.5

.NET v4.7, supports runtimes 4, 2.0, 1.1 and 1.0

IIS 8.5

Windows Server 2012 with IIS 8

64bit Windows Server 2012 running IIS 8

.NET v4.7, supports runtimes 4, 2.0, 1.1 and 1.0

IIS 8

Windows Server 2008 R2 with IIS 7.5

64bit Windows Server 2008 R2 running IIS 7.5

.NET v4.7, supports runtimes 4, 2.0, 1.1 and 1.0

IIS 7.5

More details

Configuration

AMI version

AWS SDK for .NET

EC2Config

SSM Agent

Web Deploy

AWS X‑Ray

Windows Server 2016 with IIS 10.0 version 1.2.0

2017.06.14

3.3.103.0

SSM only

2.0.805.0

3.6

1.0.0

Windows Server Core 2016 with IIS 10.0 version 1.2.0

2017.06.14

3.3.103.0

SSM only

2.0.805.0

3.6

1.0.0

Windows Server 2012 R2 with IIS 8.5 version 1.2.0

2017.06.14

3.3.102.0

4.9.1900.0

2.0.805.0

3.6

1.0.0

Windows Server 2012 R2 Server Core with IIS 8.5 version 1.2.0

2017.06.14

3.3.102.0

4.9.1900.0

2.0.805.0

3.6

1.0.0

Windows Server 2012 with IIS 8 version 1.2.0

2017.06.14

3.3.102.0

4.9.1900.0

2.0.682.0

3.6

1.0.0

Windows Server 2008 R2 with IIS 7.5 version 1.2.0

2017.06.14

3.3.102.0

4.9.1900.0

2.0.805.0

3.6

1.0.0

Windows Server 2012 R2 with IIS 8.5

2017.06.14

3.3.102.0

4.9.1900.0

2.0.805.0

3.6

1.0.0

Windows Server 2012 R2 Server Core with IIS 8.5

2017.06.14

3.3.102.0

4.9.1900.0

2.0.805.0

3.6

1.0.0

Windows Server 2012 with IIS 8

2017.06.14

3.3.102.0

4.9.1900.0

2.0.805.0

3.6

1.0.0

Windows Server 2008 R2 with IIS 7.5

2017.06.14

3.3.102.0

4.9.1900.0

2.0.805.0

3.6

1.0.0

For information about the latest security updates, see Microsoft Security Bulletin Summary for 2017.

For information on previous configurations, see .NET on Windows Server with IIS Platform History.

Node.js

Elastic Beanstalk supports the following Node.js configurations:

Configuration and Solution Stack Name

AMI

Platform

Package Manager

Proxy Server

Git

AWS X-Ray

Node.js version 4.2.0

64bit Amazon Linux 2017.03 v4.2.0 running Node.js

2017.03.1

Node.js 6.11.1, Also supports 8.1.4, 7.10.1, 7.6.0, 6.10.0, 5.12.0, 4.8.4, 4.8.0

NPM 3.9.5

nginx 1.10.3, Apache 2.4.25

2.7.4

2.0.0

For information on previous configurations, see Node.js Platform History.

Note

When support for the version of Node.js that you are using is removed from the platform configuration, you must change or remove the version setting prior to doing a platform upgrade. This may occur when a security vulnerability is identified for one or more versions of Node.js

When this occurs, attempting to upgrade to a new version of the platform that does not support the configured NodeVersion will fail. To avoid needing to create a new environment, change the NodeVersion configuration option to a version that is supported by both the old configuration version and the new one, or remove the option setting, and then perform the platform upgrade.

PHP

Elastic Beanstalk supports the following PHP configurations:

Configuration and Solution Stack Name

AMI

Language

Composer

Proxy Server

PHP 7.0 version 2.4.2

64bit Amazon Linux 2017.03 v2.4.2 running PHP 7.0

2017.03.1

PHP 7.0.16

1.4.1

Apache 2.4.25

PHP 5.6 version 2.4.2

64bit Amazon Linux 2017.03 v2.4.2 running PHP 5.6

2017.03.1

PHP 5.6.30

1.4.1

Apache 2.4.25

PHP 5.5 version 2.4.2

64bit Amazon Linux 2017.03 v2.4.2 running PHP 5.5

2017.03.1

PHP 5.5.38

1.4.1

Apache 2.4.25

PHP 5.4 version 2.4.2

64bit Amazon Linux 2017.03 v2.4.2 running PHP 5.4

2017.03.1

PHP 5.4.45

1.4.1

Apache 2.4.25

For information on previous configurations, see PHP Platform History.

Python

Elastic Beanstalk supports the following Python configurations:

Configuration and Solution Stack Name

AMI

Language

Package Manager

Packager

meld3

Proxy Server

Python 3.4 version 2.4.2

64bit Amazon Linux 2017.03 v2.4.2 running Python 3.4

2017.03.1

Python 3.4.3

pip 7.1.2

setuptools 18.4

meld3 1.0.2

Apache 2.4.25 with mod_wsgi 3.5

Python 2.7 version 2.4.2

64bit Amazon Linux 2017.03 v2.4.2 running Python 2.7

2017.03.1

Python 2.7.12

pip 7.1.2

setuptools 18.4

meld3 1.0.2

Apache 2.4.25 with mod_wsgi 3.5

Python 2.6 version 2.4.2

64bit Amazon Linux 2017.03 v2.4.2 running Python

2017.03.1

Python 2.6.9

pip 7.1.2

setuptools 18.4

meld3 1.0.2

Apache 2.4.25 with mod_wsgi 3.5

For information on previous configurations, see Python Platform History.

Ruby

Elastic Beanstalk supports the following Ruby configurations:

Configuration and Solution Stack Name

AMI

Language

Package Manager

Application Server

Proxy Server

Ruby 2.3 with Puma version 2.4.2

64bit Amazon Linux 2017.03 v2.4.2 running Ruby 2.3 (Puma)

2017.03.1

Ruby 2.3.4-p301

RubyGems 2.5.1

Puma 2.16.0

nginx 1.10.3

Ruby 2.3 with Passenger version 2.4.2

64bit Amazon Linux 2017.03 v2.4.2 running Ruby 2.3 (Passenger Standalone)

2017.03.1

Ruby 2.3.4-p301

RubyGems 2.5.1

Passenger 4.0.60

nginx 1.10.2

Ruby 2.2 with Puma version 2.4.2

64bit Amazon Linux 2017.03 v2.4.2 running Ruby 2.2 (Puma)

2017.03.1

Ruby 2.2.7-p470

RubyGems 2.4.5.1

Puma 2.16.0

nginx 1.10.3

Ruby 2.2 with Passenger version 2.4.2

64bit Amazon Linux 2017.03 v2.4.2 running Ruby 2.2 (Passenger Standalone)

2017.03.1

Ruby 2.2.7-p470

RubyGems 2.4.5.1

Passenger 4.0.60

nginx 1.10.2

Ruby 2.1 with Puma version 2.4.2

64bit Amazon Linux 2017.03 v2.4.2 running Ruby 2.1 (Puma)

2017.03.1

Ruby 2.1.10-p492

RubyGems 2.2.5

Puma 2.16.0

nginx 1.10.3

Ruby 2.1 with Passenger version 2.4.2

64bit Amazon Linux 2017.03 v2.4.2 running Ruby 2.1 (Passenger Standalone)

2017.03.1

Ruby 2.1.10-p492

RubyGems 2.2.5

Passenger 4.0.60

nginx 1.10.2

Ruby 2.0 with Puma version 2.4.2

64bit Amazon Linux 2017.03 v2.4.2 running Ruby 2.0 (Puma)

2017.03.1

Ruby 2.0.0-p648

RubyGems 2.0.14.1

Puma 2.16.0

nginx 1.10.3

Ruby 2.0 with Passenger version 2.4.2

64bit Amazon Linux 2017.03 v2.4.2 running Ruby 2.0 (Passenger Standalone)

2017.03.1

Ruby 2.0.0-p648

RubyGems 2.0.14.1

Passenger 4.0.60

nginx 1.10.2

Ruby 1.9 with Passenger version 2.4.2

64bit Amazon Linux 2017.03 v2.4.2 running Ruby 1.9.3

2017.03.1

Ruby 1.9.3-p551

RubyGems 1.8.23.2

Passenger 4.0.60

nginx 1.10.2

For information on previous configurations, see Ruby Platform History.