Introduction to Docker. Antonis Kalipetis Docker Athens Meetup

Similar documents
Midterm Presentation Schedule

利用 Mesos 打造高延展性 Container 環境. Frank, Microsoft MTC

Welcome to Docker Birthday # Docker Birthday events (list available at Docker.Party) RSVPs 600 mentors Big thanks to our global partners:

Circle IT: Microsoft Update 2016

Large-Scale Software Development. Tools and Methods

Who is Docker and how he can help us? Heino Talvik

Pritam Pabla Technology Solutions Specialist Hybrid Cloud

Red Hat Atomic Details Dockah, Dockah, Dockah! Containerization as a shift of paradigm for the GNU/Linux OS

Amir Zipory Senior Solutions Architect, Redhat Israel, Greece & Cyprus

Deployment Patterns using Docker and Chef

Large-Scale Software Development. Tools and Methods

[Docker] Containerization

The four forces of Cloud Native

SQL Server inside a docker container. Christophe LAPORTE SQL Server MVP/MCM SQL Saturday 735 Helsinki 2018

Docker for People. A brief and fairly painless introduction to Docker. Friday, November 17 th 11:00-11:45

Docker and Security. September 28, 2017 VASCAN Michael Irwin

Think Small to Scale Big

A DEVOPS STATE OF MIND WITH DOCKER AND KUBERNETES. Chris Van Tuin Chief Technologist, West

ovirt and Docker Integration

ROBIN SYSTEMS. Containerizing Oracle: Not Thinking About It Yet? You Should Be!!!

Logging, Monitoring, and Alerting

Running MarkLogic in Containers (Both Docker and Kubernetes)

Docker und IBM Digital Experience in Docker Container

Container System Overview

Kubernetes The Path to Cloud Native

Faculté Polytechnique

VNS3 3.5 Container System Add-Ons

A Greybeard's Worst Nightmare

An introduction to Docker

Mandi Walls. Technical Community #habitatsh

Industry-leading Application PaaS Platform

Multi-Arch Layered Image Build System

Travis Cardwell Technical Meeting

Docker and Oracle Everything You Wanted To Know

RED HAT'S CONTAINER STRATEGY. Lars Herrmann General Manager, RHEL, RHEV and Containers June 24, 2015

OpenShift 3 Technical Architecture. Clayton Coleman, Dan McPherson Lead Engineers

Portable, lightweight, & interoperable Docker containers across Red Hat solutions

SUSE Linux Enterprise Server 12 Modules

Building A Better Test Platform:

CNA1699BU Running Docker on your Existing Infrastructure with vsphere Integrated Containers Martijn Baecke Patrick Daigle VMworld 2017 Content: Not fo

Go Faster: Containers, Platforms and the Path to Better Software Development (Including Live Demo)

Docker II - Judgement Day

CLOUD-NATIVE APPLICATION DEVELOPMENT/ARCHITECTURE

VMworld 2017 Content: Not for publication #CNA1699BE CONFIDENTIAL 2

Sunil Shah SECURE, FLEXIBLE CONTINUOUS DELIVERY PIPELINES WITH GITLAB AND DC/OS Mesosphere, Inc. All Rights Reserved.

CONTINUOUS DELIVERY WITH DC/OS AND JENKINS

Advanced Continuous Delivery Strategies for Containerized Applications Using DC/OS

Container in Production : Openshift 구축사례로 이해하는 PaaS. Jongjin Lim Specialist Solution Architect, AppDev

Containerizing GPU Applications with Docker for Scaling to the Cloud

In-cluster Open Source Testing Framework

개발자와운영자를위한 DevOps 플랫폼 OpenShift Container Platform. Hyunsoo Senior Solution Architect 07.Feb.2017

DevOps in the Cloud A pipeline to heaven?! Robert Cowham BCS CMSG Vice Chair

USING DOCKER FOR MXCUBE DEVELOPMENT AT MAX IV

Docker 101 Workshop. Eric Smalling - Solution Architect, Docker

CONTINUOUS DELIVERY WITH MESOS, DC/OS AND JENKINS

Docker and HPE Accelerate Digital Transformation to Enable Hybrid IT. Steven Follis Solutions Engineer Docker Inc.

How to Put Your AF Server into a Container

Ruby in the Sky with Diamonds. August, 2014 Sao Paulo, Brazil

Index. Bessel function, 51 Big data, 1. Cloud-based version-control system, 226 Containerization, 30 application, 32 virtualize processes, 30 31

CS-580K/480K Advanced Topics in Cloud Computing. Container III

Harbor Registry. VMware VMware Inc. All rights reserved.

Red Hat Quay 2.9 Deploy Red Hat Quay - Basic

Azure DevOps. Randy Pagels Intelligent Cloud Technical Specialist Great Lakes Region

Continuous delivery of Java applications. Marek Kratky Principal Sales Consultant Oracle Cloud Platform. May, 2016

One year of Deploying Applications for Docker, CoreOS, Kubernetes and Co.

Important DevOps Technologies (3+2+3days) for Deployment

A DEVOPS STATE OF MIND. Chris Van Tuin Chief Technologist, West

Kuber-what?! Learn about Kubernetes

Getting Started With Containers

Table of Contents 1.1. Overview. Containers, Docker, Registries vsphere Integrated Containers Engine

Introduction to Containers

Table of Contents 1.1. Introduction. Overview of vsphere Integrated Containers 1.2

TEN LAYERS OF CONTAINER SECURITY. Kirsten Newcomer Security Strategist

TEN LAYERS OF CONTAINER SECURITY

Microservices. Chaos Kontrolle mit Kubernetes. Robert Kubis - Developer Advocate,

IBM Bluemix compute capabilities IBM Corporation

There's More to Docker than the Container The Docker Platform

Accelerate at DevOps Speed With Openshift v3. Alessandro Vozza & Samuel Terburg Red Hat

EE 660: Computer Architecture Cloud Architecture: Virtualization

Con$nuous Deployment with Docker Andrew Aslinger. Oct

Oh.. You got this? Attack the modern web

" Qué me estás container?" Docker for dummies

CS 470 Spring Virtualization and Cloud Computing. Mike Lam, Professor. Content taken from the following:

Table of Contents DevOps Administrators

WHITE PAPER. RedHat OpenShift Container Platform. Benefits: Abstract. 1.1 Introduction

Using DC/OS for Continuous Delivery

The age of orchestration

Orchestrating Docker containers at scale

InterSystems Cloud Manager & Containers for InterSystems Technologies. Luca Ravazzolo Product Manager

Implementing the Twelve-Factor App Methodology for Developing Cloud- Native Applications

Introduction to containers

OS Virtualization. Linux Containers (LXC)

TRAINING AND CERTIFICATION UPDATE

It s probably the most popular containerization technology on Linux these days

Containers, Serverless and Functions in a nutshell. Eugene Fedorenko

containerization: more than the new virtualization

Firefox Crash Reporting.

DevOps Workflow. From 0 to kube in 60 min. Christian Kniep, v Technical Account Manager, Docker Inc.

Docker for Development: Getting Started

Getting Started With Serverless: Key Use Cases & Design Patterns

Transcription:

Introduction to Docker Antonis Kalipetis - @akalipetis Docker Athens Meetup

Contents Introduction to Docker, Containers, and the Matrix from Hell Why people care: Separation of Concerns Technical Discussion Use Cases Docker Futures Learn More Demos Networking

The Challenge Mul$plicity of Stacks Static website nginx 1.5 + modsecurity + openssl + bootstrap 2 Background workers Python 3.0 + celery + pyredis + libcurl + ffmpeg + libopencv + nodejs + phantomjs User DB postgresql + pgv8 + v8 Web frontend Ruby + Rails + sass + Unicorn Queue Redis + redis-sentinel Analytics DB hadoop + hive + thrift + OpenJDK API endpoint Do services and apps interact appropriately? Python 2.7 + Flask + pyredis + celery + psycopg + postgresql-client Mul$plicity of hardware environments Development VM Customer Data Center QA server Public Cloud Disaster recovery Production Cluster Contributor s laptop Can I migrate smoothly and quickly? Production Servers

The Matrix From Hell Static website??????? Web frontend??????? Background workers??????? User DB??????? Analytics DB??????? Queue??????? Developmen t VM QA Server Single Prod Server Onsite Cluster Public Cloud Contributor s laptop Customer Servers

Cargo Transport Pre-1960 Mul$pilicity of methods for transpor$ng/storing Mul$plicity of Goods Do I worry about how goods interact (e.g. coffee beans next to spices) Can I transport quickly and smoothly (e.g. from boat to train to truck)

Also a matrix from hell??????????????????????????????????????????

A standard container that is loaded with virtually any goods, and stays sealed until it reaches final delivery. in between, can be loaded and unloaded, stacked, transported efficiently over long distances, and transferred from one mode of transport to another Can I transport quickly and smoothly (e.g. from boat to train to truck) Mul$plicity of methods for transpor$ng/storing Do I worry about how goods interact (e.g. coffee beans next to spices) Mul$plicity of Goods Solution: Intermodal Shipping Container

Docker is a shipping container system for code Mul$plicity of Stacks Static website An engine that enables any payload to be encapsulated as a lightweight, portable, self-sufficient container User DB Web frontend Queue Analytics DB Do services and apps interact appropriately? Mul$plicity of hardware environments Development VM that can be manipulated using standard operations and run consistently on virtually any hardware platform QA server Customer Data Public Cloud Contributor s Production Cluster Center laptop Can I migrate smoothly and quickly

Docker eliminates the matrix from Hell Static website Web frontend Background workers User DB Analytics DB Queue Developmen t VM QA Server Single Prod Server Onsite Cluster Public Cloud Contributor s laptop Customer Servers

Contents Introduction to Docker, Containers, and the Matrix from Hell Why people care: Separation of Concerns Technical Discussion Use Cases Docker Futures Learn More Demos Networking

Why Developers Care Build once (finally) run anywhere* A clean, safe, hygienic and portable runtime environment for your app. No worries about missing dependencies, packages and other pain points during subsequent deployments. Run each app in its own isolated container, so you can run various versions of libraries and other dependencies for each app without worrying Automate testing, integration, packaging anything you can script Reduce/eliminate concerns about compatibility on different platforms, either your own or your customers. Cheap, zero-penalty containers to deploy services? A VM without the overhead of a VM? Instant replay and reset of image snapshots? That s the power of Docker * With the 0.7 release, we support any x86 server running a modern Linux kernel (3.2+ generally. 2.6.32+ for RHEL 6.5+, Fedora, & related)

Why Devops Cares? Configure once run anything Make the entire lifecycle more efficient, consistent, and repeatable Increase the quality of code produced by developers. Eliminate inconsistencies between development, test, production, and customer environments Support segregation of duties Significantly improves the speed and reliability of continuous deployment and continuous integration systems Because the containers are so lightweight, address significant performance, costs, deployment, and portability issues normally associated with VMs

Why it works separation of concerns Rhea the Developer Worries about what s inside the container Her code Her Libraries Her Package Manager Her Apps Her Data All Linux servers look the same Kronos the Ops Guy Worries about what s outside the container Logging Remote access Monitoring Network config All containers start, stop, copy, attach, migrate, etc. the same way

Contents Introduction to Docker, Containers, and the Matrix from Hell Why people care: Separation of Concerns Technical Discussion Use Cases Docker Futures Learn More Demos Networking

More technical explanation WHY Run everywhere Regardless of kernel version (2.6.32+) Regardless of host distro Physical or virtual, cloud or not Container and host architecture must match* Run anything If it can run on the host, it can run in the container i.e. if it can run on a Linux kernel, it can run WHAT High Level It s a lightweight VM Own process space Own network interface Can run stuff as root Can have its own /sbin/init (different from host) <<machine container>> Low Level It s chroot on steroids Can also not have its own /sbin/ init Container=isolated processes Share kernel with host No device emulation (neither HVM nor PV) from host) <<application container>>

Containers vs. VMs VM App A Libs Guest OS App A Libs Guest OS Guest OS App B Libs Guest OS Guest OS Containers are isolated, but share OS and, where appropriate, bins/libraries result is significantly faster deployment, much less overhead, easier migra$on, faster restart Hypervisor (Type 2) Host OS Container App A App A Libs App B App B App B Libs Host OS App B Docker Server Server

Why are Docker containers lightweight? VMs Containers App A Libs App A Libs App A Libs App A Libs App A App Δ Guest OS Guest OS Guest Guest OS OS VMs Every app, every copy of an app, and every slight modifica$on of the app requires a new virtual server Original App (No OS to take up space, resources, or require restart) Copy of App No OS. Can Share bins/libs Modified App Copy on write capabili$es allow us to only save the diffs Between container A and container A

What are the basics of the Docker system? Container A Push Docker Container Image Registry Search Pull Dockerfile For A Build Run Source Code Repository Docker Engine Host 1 OS (Linux) Container A Docker Container C Container B Host 2 OS (Linux)

Changes and Updates App A Libs App Δ Push Docker Container Image Registry Base Container Image Container Mod A Container Mod A App Δ Update App A Libs Docker Engine Host is now running A App A Libs Docker Engine Host running A wants to upgrade to A. Requests update. Gets only diffs

Contents Introduction to Docker, Containers, and the Matrix from Hell Why people care: Separation of Concerns Technical Discussion Use Cases Docker Futures Learn More Demos Networking

Use Cases Ted Dziuba on the Use of Docker for Continuous Integration at Ebay Now https://speakerdeck.com/teddziuba/docker-at-ebay http://www.youtube.com/watch?feature=player_embedded&v=0hi0w4gx--4 Sasha Klizhentas on use of Docker at Mailgun/Rackspace http://www.youtube.com/watch?feature=player_embedded&v=cmc3xdao9ri Sebastien Pahl on use of Docker at CloudFlare http://www.youtube.com/watch?feature=player_embedded&v=-lj3jt_-3r0 Cambridge HealthCare http://blog.howareyou.com/post/62157486858/continuous-delivery-with-docker-and-jenkinspart-i Red Hat Openshift and Docker https://www.openshift.com/blogs/technical-thoughts-on-openshift-and-docker

Use Cases From Our Community

Contents Introduction to Docker, Containers, and the Matrix from Hell Why people care: Separation of Concerns Technical Discussion Use Cases Docker Futures Learn More Demos Networking

Docker Futures* LXC Docker 0.1-0.6 AUFS JAILS Docker 0.8+ Docker 0.11 (current release) Linked containers can be accessed by hostname Logs can now be returned with an optional timestamp Shrink and stabilize Core Provide stable, pluggable API Nested containers We will consider this production ready Release candidate for 1.0 Docker 1.0 First officially stable release * Time based releases (1x/5wks)

Contents Introduction to Docker, Containers, and the Matrix from Hell Why people care: Separation of Concerns Technical Discussion Use Cases Docker Futures Learn More Demos Networking

Want to learn more? www.docker.io: Documentation Getting started: interactive tutorial, installation instructions, getting started guide, About: Introductory whitepaper: http://www.docker.io/the-whole-story/ Github: dotcloud/docker IRC: freenode/#docker Google groups: groups.google.com/forum/#!forum/docker-user Twitter: follow @docker Next Meetups: 3-week schedule, we ll try our best to keep the pace

www.docker.io