AWS Elastic Beanstalk
Platforms

AWS Elastic Beanstalk Supported Platforms

Elastic Beanstalk provides preconfigured platforms that support running web applications developed for specific programming languages, frameworks, and web containers. Elastic Beanstalk offers one or more platform versions for each platform. When you create an environment and choose a platform, Elastic Beanstalk provisions the resources that your application needs, including one or more Amazon Elastic Compute Cloud (Amazon EC2) instances. The software stack running on the Amazon EC2 instances depends on the platform version you chose.

For more information about platforms, see AWS Elastic Beanstalk Platforms in the AWS Elastic Beanstalk Developer Guide. Detailed release notes are available for recent releases at AWS Elastic Beanstalk Release Notes.

The following sections provide information about all currently supported platform versions. All current Linux-based platform versions run on Amazon Linux 2018.03 (64-bit). For lists of historical platform versions and the date ranges they were current, see Platform History.

Elastic Beanstalk has scheduled some platform versions for retirement, because some of their components are reaching their End of Life (EOL). These platform versions remain available until the published retirement date of their retiring components. For a list of component retirement dates, see AWS Elastic Beanstalk Platform Support Policy in the AWS Elastic Beanstalk Developer Guide. For a list of platform versions scheduled for retirement, see AWS Elastic Beanstalk Platform Versions Scheduled for Retirement.

Packer Builder

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

Platform Version and Solution Stack Name

AMI

Packer Version

Elastic Beanstalk Packer Builder version 2.6.14

64bit Amazon Linux 2018.03 v2.6.14 running Packer 1.0.3

2018.03.0

1.0.3

For information about previous platform versions, 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 platform includes an nginx proxy server.

See Deploying Elastic Beanstalk Applications from Docker Containers in the AWS Elastic Beanstalk Developer Guide for more information about the Docker platform.

Platform Version and Solution Stack Name

AMI

Docker Version

Proxy Server

Single Container Docker 18.06 version 2.12.16

64bit Amazon Linux 2018.03 v2.12.16 running Docker 18.06.1-ce

2018.03.0

18.06.1-ce

nginx 1.14.1

For information about previous platform versions, see Single Container 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.

Note

Elastic Beanstalk uses Amazon Elastic Container Service (Amazon ECS) to coordinate container deployments to multicontainer Docker environments. Some regions don't offer Amazon ECS. Multicontainer Docker isn't supported in these regions.

For information about the AWS services offered in each region, see Region Table.

See Deploying Elastic Beanstalk Applications from Docker Containers in the AWS Elastic Beanstalk Developer Guide for more information about the Docker platform.

Platform Version and Solution Stack Name

AMI

Docker Version

ECS Agent

Multicontainer Docker 18.06 version 2.15.2

64bit Amazon Linux 2018.03 v2.15.2 running Multi-container Docker 18.06.1-ce (Generic)

2018.03.0

18.06.1-ce

1.29.1

For information about previous platform versions, see Multicontainer Docker Platform History.

Preconfigured Docker

The Preconfigured Docker platform uses Docker, but doesn't 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 provide support for Go applications prior to the release of the full-fledged Go platform.

Platform Version and Solution Stack Name

AMI

Platform

Container OS

Language

Proxy Server

Application Server

Docker Image

Glassfish 5.0 (Docker) version 2.12.16

64bit Amazon Linux v2.12.16 running GlassFish 5.0 Java 8 (Preconfigured - Docker)

2018.03.0

Docker 18.06.1-ce

Amazon Linux 2018.03

Java 8

nginx 1.14.1

Glassfish 5.0

amazon/aws-eb-glassfish:5.0-al-onbuild-2.11.1

For information about platform versions scheduled for retirement as published in Platform Support Policy, see Preconfigured Docker on the Retiring Platform Versions page. For information about previous platform versions, see Preconfigured Docker Platform History.

Go

Elastic Beanstalk supports the following Go platform versions.

Platform Version and Solution Stack Name

AMI

Language

AWS X‑Ray

Proxy Server

Go 1.12 version 2.12.1

64bit Amazon Linux 2018.03 v2.12.1 running Go 1.12.7

2018.03.0

Go 1.12.7

3.1.0

nginx 1.14.1

For information about previous platform versions, see Go Platform History.

Java SE

Elastic Beanstalk supports the following Java SE platform versions.

Platform Version and Solution Stack Name

AMI

Language

Tools

AWS X‑Ray

Proxy Server

Java 8 version 2.9.1

64bit Amazon Linux 2018.03 v2.9.1 running Java 8

2018.03.0

Java 1.8.0_201

Ant 1.9.6, Gradle 2.7, Maven 3.3.3

3.1.0

nginx 1.14.1

Java 7 version 2.9.1

64bit Amazon Linux 2018.03 v2.9.1 running Java 7

2018.03.0

Java 1.7.0_211

Ant 1.9.6, Gradle 2.7, Maven 3.3.3

3.1.0

nginx 1.14.1

For information about previous platform versions, see Java SE Platform History.

Java with Tomcat

Elastic Beanstalk supports the following Tomcat platform versions.

Platform Version and Solution Stack Name

AMI

Language

AWS X‑Ray

Application Server

Proxy Server

Java 8 with Tomcat 8.5 version 3.2.1

64bit Amazon Linux 2018.03 v3.2.1 running Tomcat 8.5 Java 8

2018.03.0

Java 1.8.0_201

3.1.0

Tomcat 8.5.42

Apache 2.4.39 (default), Apache 2.2.34, Nginx 1.14.1

Java 7 with Tomcat 7 version 3.2.1

64bit Amazon Linux 2018.03 v3.2.1 running Tomcat 7 Java 7

2018.03.0

Java 1.7.0_211

3.1.0

Tomcat 7.0.94

Apache 2.4.39 (default), Apache 2.2.34, Nginx 1.14.1

For information about platform versions scheduled for retirement as published in Platform Support Policy, see Java with Tomcat on the Retiring Platform Versions page. For information about previous platform versions, 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 doesn't support the following Elastic Beanstalk features:

In addition, platform versions earlier than v2.0.0 don't support enhanced health reporting, managed platform updates, immutable updates, immutable deployments, and rolling deployments with an additional batch.

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 in the AWS Elastic Beanstalk Developer Guide.

For information about the latest Microsoft security updates, see Security TechCenter and Security Advisories and Bulletins.

For information about .NET platform versions scheduled for retirement as published in Platform Support Policy, see .NET on Windows Server with IIS on the Retiring Platform Versions page. For information about previous .NET platform versions for Elastic Beanstalk, see .NET on Windows Server with IIS Platform History.

Elastic Beanstalk supports the following .NET platform versions.

Configuration basics

Platform Version

Solution Stack Name

Framework

Proxy Server

Windows Server 2016 with IIS 10.0 version 2.2.0

64bit Windows Server 2016 v2.2.0 running IIS 10.0

.NET Core 2.2.6, supports 2.2.6, 2.1.12

.NET Framework 4.8, supports 4.x, 2.0, 1.x

IIS 10.0

Windows Server Core 2016 with IIS 10.0 version 2.2.0

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

.NET Core 2.2.6, supports 2.2.6, 2.1.12

.NET Framework 4.8, supports 4.x, 2.0, 1.x

IIS 10.0

Windows Server 2012 R2 with IIS 8.5 version 2.2.0

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

.NET Core 2.2.6, supports 2.2.6, 2.1.12

.NET Framework 4.8, supports 4.x, 2.0, 1.x

IIS 8.5

Windows Server 2012 R2 Server Core with IIS 8.5 version 2.2.0

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

.NET Core 2.2.6, supports 2.2.6, 2.1.12

.NET Framework 4.8, supports 4.x, 2.0, 1.x

IIS 8.5

Windows Server 2016 with IIS 10.0 version 1.2.0

64bit Windows Server 2016 v1.2.0 running IIS 10.0

.NET Core 2.2.6, supports 2.2.6, 2.1.12, 2.0.9, 1.1.14, 1.0.16

.NET Framework 4.8, supports 4.x, 2.0, 1.x

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 Core 2.2.6, supports 2.2.6, 2.1.12, 2.0.9, 1.1.14, 1.0.16

.NET Framework 4.8, supports 4.x, 2.0, 1.x

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 Core 2.2.6, supports 2.2.6, 2.1.12, 2.0.9, 1.1.14, 1.0.16

.NET Framework 4.8, supports 4.x, 2.0, 1.x

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 Core 2.2.6, supports 2.2.6, 2.1.12, 2.0.9, 1.1.14, 1.0.16

.NET Framework 4.8, supports 4.x, 2.0, 1.x

IIS 8.5

Windows Server 2012 with IIS 8 version 1.2.0

64bit Windows Server 2012 v1.2.0 running IIS 8

.NET Core 2.2.6, supports 2.2.6, 2.1.12, 2.0.9, 1.1.14, 1.0.16

.NET Framework 4.8, supports 4.x, 2.0, 1.x

IIS 8

Windows Server 2012 R2 with IIS 8.5

64bit Windows Server 2012 R2 running IIS 8.5

.NET Framework 4.8, supports 4.x, 2.0, 1.x

IIS 8.5

Windows Server 2012 R2 Server Core with IIS 8.5

64bit Windows Server Core 2012 R2 running IIS 8.5

.NET Framework 4.8, supports 4.x, 2.0, 1.x

IIS 8.5

Windows Server 2012 with IIS 8

64bit Windows Server 2012 running IIS 8

.NET Framework 4.8, supports 4.x, 2.0, 1.x

IIS 8

More details

Platform Version

AMI version

AWS SDK for .NET

EC2Config

SSM Agent

Web Deploy

AWS X‑Ray

Windows Server 2016 with IIS 10.0 version 2.2.0

2019.07.12

3.15.780

SSM only

2.3.542.0

3.6

3.1.0

Windows Server Core 2016 with IIS 10.0 version 2.2.0

2019.07.12

3.15.780

SSM only

2.3.542.0

3.6

3.1.0

Windows Server 2012 R2 with IIS 8.5 version 2.2.0

2019.07.12

3.15.780

4.9.3429

2.3.542.0

3.6

3.1.0

Windows Server 2012 R2 Server Core with IIS 8.5 version 2.2.0

2019.07.12

3.15.780

4.9.3429

2.3.542.0

3.6

3.1.0

Windows Server 2016 with IIS 10.0 version 1.2.0

2019.07.12

3.15.780

SSM only

2.3.542.0

3.6

3.1.0

Windows Server Core 2016 with IIS 10.0 version 1.2.0

2019.07.12

3.15.780

SSM only

2.3.542.0

3.6

3.1.0

Windows Server 2012 R2 with IIS 8.5 version 1.2.0

2019.07.12

3.15.780

4.9.3429

2.3.542.0

3.6

3.1.0

Windows Server 2012 R2 Server Core with IIS 8.5 version 1.2.0

2019.07.12

3.15.780

4.9.3429

2.3.542.0

3.6

3.1.0

Windows Server 2012 with IIS 8 version 1.2.0

2019.07.12

3.15.780

4.9.3429

2.3.542.0

3.6

3.1.0

Windows Server 2012 R2 with IIS 8.5

2019.07.12

3.15.780

4.9.3429

2.3.542.0

3.6

3.1.0

Windows Server 2012 R2 Server Core with IIS 8.5

2019.07.12

3.15.780

4.9.3429

2.3.542.0

3.6

3.1.0

Windows Server 2012 with IIS 8

2019.07.12

3.15.780

4.9.3429

2.3.542.0

3.6

3.1.0

Node.js

The Node.js platform supports a few Node.js versions in each platform version. The following table lists them. The default Node.js version applies when the NodeVersion option in the aws:elasticbeanstalk:container:nodejs namespace isn't set. For details, see Node.js Platform Options in the AWS Elastic Beanstalk Developer Guide.

Each Node.js version includes a respective version of npm (the Node.js package manager). The table lists npm versions in parentheses.

Note

Node.js versions 4.x to 8.x have an upcoming retirement date. We recommend that you avoid using them in new applications, and migrate existing applications to the latest version.

Elastic Beanstalk supports the following Node.js platform versions.

Platform Version and Solution Stack Name

AMI

Node.js versions (npm versions)

Proxy Server

Git

AWS X‑Ray

Node.js version 4.10.1

64bit Amazon Linux 2018.03 v4.10.1 running Node.js

2018.03.0

10.16.0 (6.9.0), 10.15.3 (6.4.1), 10.15.1 (6.4.1), 10.15.0 (6.4.1), 10.14.1 (6.4.1), 8.16.0 (6.4.1), 8.15.1 (6.4.1), 8.15.0 (6.4.1), 8.14.0 (6.4.1), 7.10.1 (4.2.0), 6.17.1 (3.10.10), 6.17.0 (3.10.10), 6.16.0 (3.10.10), 6.15.1 (3.10.10), 5.12.0 (3.8.6), 4.9.1 (2.15.11), 4.8.7 (2.15.11)

Default version: 10.16.0

nginx 1.14.1, Apache 2.4.39

2.14.5

3.1.0

For information about previous platform versions, see Node.js Platform History.

Note

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

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 platform version and the new one, or remove the option setting, and then perform the platform update.

PHP

Elastic Beanstalk supports the following PHP platform versions.

Platform Version and Solution Stack Name

AMI

Language

Composer

Proxy Server

PHP 7.2 version 2.8.14

64bit Amazon Linux 2018.03 v2.8.14 running PHP 7.2

2018.03.0

PHP 7.2.19

1.4.2

Apache 2.4.39

For information about platform versions scheduled for retirement as published in Platform Support Policy, see PHP on the Retiring Platform Versions page. For information about previous platform versions, see PHP Platform History.

Python

Elastic Beanstalk supports the following Python platform versions.

Platform Version and Solution Stack Name

AMI

Language

Package Manager

Packager

meld3

AWS X‑Ray

Proxy Server

Python 3.6 version 2.9.1

64bit Amazon Linux 2018.03 v2.9.1 running Python 3.6

2018.03.0

Python 3.6.8

pip 9.0.3

setuptools 28.8.0

meld3 1.0.2

3.1.0

Apache 2.4.39 with mod_wsgi 3.5

For information about platform versions scheduled for retirement as published in Platform Support Policy, see Python on the Retiring Platform Versions page. For information about previous platform versions, see Python Platform History.

Ruby

Elastic Beanstalk supports the following Ruby platform versions.

Platform Version and Solution Stack Name

AMI

Language

Package Manager

Application Server

AWS X‑Ray

Proxy Server

Ruby 2.6 with Puma version 2.10.1

64bit Amazon Linux 2018.03 v2.10.1 running Ruby 2.6 (Puma)

2018.03.0

Ruby 2.6.3-p62

RubyGems 2.7.9

Puma 2.16.0

3.1.0

nginx 1.14.1

Ruby 2.6 with Passenger version 2.10.1

64bit Amazon Linux 2018.03 v2.10.1 running Ruby 2.6 (Passenger Standalone)

2018.03.0

Ruby 2.6.3-p62

RubyGems 2.7.9

Passenger 4.0.60

3.1.0

nginx 1.14.1

Ruby 2.5 with Puma version 2.10.1

64bit Amazon Linux 2018.03 v2.10.1 running Ruby 2.5 (Puma)

2018.03.0

Ruby 2.5.5-p157

RubyGems 2.7.9

Puma 2.16.0

3.1.0

nginx 1.14.1

Ruby 2.5 with Passenger version 2.10.1

64bit Amazon Linux 2018.03 v2.10.1 running Ruby 2.5 (Passenger Standalone)

2018.03.0

Ruby 2.5.5-p157

RubyGems 2.7.9

Passenger 4.0.60

3.1.0

nginx 1.14.1

Ruby 2.4 with Puma version 2.10.1

64bit Amazon Linux 2018.03 v2.10.1 running Ruby 2.4 (Puma)

2018.03.0

Ruby 2.4.6-p354

RubyGems 2.7.9

Puma 2.16.0

3.1.0

nginx 1.14.1

Ruby 2.4 with Passenger version 2.10.1

64bit Amazon Linux 2018.03 v2.10.1 running Ruby 2.4 (Passenger Standalone)

2018.03.0

Ruby 2.4.6-p354

RubyGems 2.7.9

Passenger 4.0.60

3.1.0

nginx 1.14.1

For information about platform versions scheduled for retirement as published in Platform Support Policy, see Ruby on the Retiring Platform Versions page. For information about previous platform versions, see Ruby Platform History.