Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Continuous Delivery Using Docker and AWS Beanstalk

No description
by

Andrey Rebrov

on 23 September 2014

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Continuous Delivery Using Docker and AWS Beanstalk

Continuous Delivery using Docker and AWS Beanstalk
Linux Containers
Lightweight virtualization layer built into the Linux kernel
Extremely fast startup time, on the same order as launching a process.
Execution Framework
Raw containers are a pain, so docker makes launching processes inside a container easier
Who Am I?
Andrei Rebrov
CTO, Scentbird
@andrebrov
What is Docker?
Docker Demo
How to use Docker with AWS Beanstalk
What I want to present?
What is Docker?
A tool for creating Linux Containers
A framework for executing those containers
A framework for managing collections of containers
It's not a hypervisor
Instead of building an entire VM, share the kernel that's already loaded
Since the kernel is shared, you can't run non-linux guests like Windows
Containers are isolated in the kernel through namespaces:
Filesystem
PIDs
IPC
Network
UIDs
Docker containers are more than just lxc templates
Linux Container templates are generally just filesystems
Docker containers add additional metadata:
Port forwarding
Entry point commands
Docker containers can be built manually or automatically using a Dockerfile
Once software is installed, `docker commit` creates a new snapshot of the container
Containers are versioned using content hashes
Only files changed between versions are stored
Launching Docker Containers Is Easy
Privileged docker daemon exposes a RESTful API for controlling the execution environment

Docker CLI running unprivileged uses the API to build, launch, and otherwise control executing containers

By default the docker daemon only listens on a Unix socket, but can be configured to listen on TCP
Docker Repositories
Once built, docker containers can be registered into either a private or a public repository and shared.
Demo Time
So you are running Docker in production?
What is AWS Beanstalk
AWS Elastic Beanstalk is a PaaS service from Amazon Web Services that allows users to create applications and push them to a definable set of AWS services, including Amazon EC2, Amazon S3, Amazon Simple Notification Service (SNS), Amazon CloudWatch, auto scaling, and elastic load balancers.
Why I am using AWS?
Continuous Deployment
Zero downtime deployment
Scalability and High Availability
What else do I use?
New Relic
Sentry
Jenkins
Amazon S3
How it works
Push new code to Git
Build new version
Upload new version to S3
Upload Dockerfile to Beanstalk
.....
Profit!
Full transcript