Post on 11-Jul-2015
AWS Elastic Beanstalk and Docker:
High Fidelity, High Velocity
Deployments in the Cloud
Evan Brown
@evandbrown
Senior Developer Advocate, AWS
a quick thank you
AWS Elastic Beanstalk and Docker: High
Fidelity, High Velocity Deployments in the
CloudEvan Brown
Senior Developer Advocate, Amazon Web Services
Elastic Beans Talk
Develop
DeployManage & Scale
Develop
DeployManage & Scale
Develop
DeployManage & Scale
Spring&
Struts&
Composer&
Laravel&
MVC&
Flask&
Django&
Express&
Rails&
Sinatra&
…
Develop
DeployManage & Scale
leverage the ecosystem
VPC&
RDS&
ElastiCache&
DynamoDB&
CloudFormation&
Auto Scaling&
Multiple Availability Zones&
S3&
CloudWatch&
…
Develop
DeployManage & Scale
Develop
DeployManage & Scale
leverage the ecosystem
VPC – fine-grained controls; extend on-premises
RDS&
ElastiCache&
DynamoDB&
CloudFormation&
Auto Scaling&
Multiple Availability Zones&
S3&
CloudWatch&
…
leverage the ecosystem
VPC – fine-grained controls; extend on-premises
Develop
DeployManage & Scale
leverage the ecosystem
VPC&
RDS – MySQL, PostgreSQL, Oracle, SQL Server
ElastiCache&
DynamoDB&
CloudFormation&
Auto Scaling&
Multiple Availability Zones&
S3&
CloudWatch&
…
leverage the ecosystem
VPC&
RDS&
ElastiCache – Redis and Memcached
DynamoDB&
CloudFormation&
Auto Scaling&
Multiple Availability Zones&
S3&
CloudWatch&
…
Develop
DeployManage & Scale
leverage the ecosystem
VPC&
RDS&
ElastiCache&
DynamoDB&
CloudFormation&
Auto Scaling&
Multiple Availability Zones&
S3&
CloudWatch&
…
Develop
DeployManage & Scale
Develop
DeployManage & Scale
just add a yaml file to your app
quick detour
Free
So many snacks
So many Solutions Architects
Training & Tech Talks
Through June 27
http://bit.ly/awsloft
Develop
DeployManage & ScaleAPI
Develop
DeployManage & Scale
Develop
DeployManage & Scale
load balanced, auto scaled
Develop
DeployManage & ScaleA
pp
EL
B
AZ
your-app.elasticbeanstalk.com
Alert
Log
Mon
single instance
Develop
DeployManage & ScaleA
pp
AZ
your-app.elasticbeanstalk.com
Alert
Log
Mon
queue-driven worker
Develop
DeployManage & ScaleA
pp
Qu
eu
e
AZ
producer
Alert
Log
Mon
Develop
DeployManage & Scale
App.zip
Elastic Beanstalk
App.zip
App.zip
Elastic Beanstalk
App.zip
Python 3
WSGI entrypoint:
app.py
Python
libs
App.zip
Python
2.7.5
Python
libs
WSGI entrypoint:
application.py
Elastic Beanstalk
App.zip
Python 3
WSGI entrypoint:
app.py
Python
libs
App.zip
Python 3
WSGI entrypoint:
app.py
Python
libs
App.zip
Python
2.7.5
Python
libs
WSGI entrypoint:
application.py
Elastic Beanstalk
Developer can build app to interface, or
customize the Beanstalk interface
Enable high fidelity, high velocity
deployments in Elastic Beanstalk
You own the runtime
App.zip
Elastic Beanstalk
Do
cker
App.zip
Python 3
WSGI entrypoint:
app.py
Python
libs
App.zip
Elastic Beanstalk
Do
ck
er
App.zip
Python 3
WSGI entrypoint:
app.py
Python
libs
App.zip
Python 3
WSGI entrypoint:
app.py
Python
libs
Deploy your container 3 ways
App.zip
Python 3
WSGI entrypoint:
app.py
Python
libs
Dockerfile
• Image will be built on
each instance
App.zip
Python 3
WSGI entrypoint:
app.py
Python
libs
Dockerrun.aws.json
• Manifest that describes
how to run container
App.zip
Python 3
WSGI entrypoint:
app.py
Python
libs
Dockerrun.aws.json
Zip with app context
App.zip
-------------------------------
|-- Dockerfile
|-- Dockerrun.aws.json
Dockerfile
Dockerrun.aws.json
high fidelity, high velocity
App.zip
Elastic Beanstalk
Do
ck
er
App.zip
Local Dev (e.g., MacBook Pro)
Do
ck
er
App.zip
Python 3
WSGI entrypoint:
app.py
Python
libs
DEMO
Questions & Answers
• bit.ly/eb-dockercon
•@aws_eb
• bit.ly/awsloft