Introduction to Docker

Slides:



Advertisements
Similar presentations
Kat Passen.  Open source platform to manage deployment  Acts as a layer between an OS and an application  Images not dependent on system – similar.
Advertisements

Docker Martin Meyer Agenda What is Docker? –Docker vs. Virtual Machine –History, Status, Run Platforms –Hello World Images and Containers.
Docker Martin Meyer Agenda What is Docker? –Docker vs. Virtual Machine –History, Status, Run Platforms Hello World Terminology: Image and.
Virtualization for Cloud Computing
ProjectWise Virtualization Kevin Boland. What is Virtualization? Virtualization is a technique for deploying technologies. Virtualization creates a level.
Windows Azure Conference 2014 Running Docker on Windows Azure.
Model a Container Runtime environment on Your Mac with VMware AppCatalyst VMworld Fabio Rapposelli
Windows Azure Conference 2014 Deploy your Java workloads on Windows Azure.
608D CloudStack 3.0 Omer Palo Readiness Specialist, WW Tech Support Readiness May 8, 2012.
Vagrant workflow Jul. 15, 2014.
Docker and Container Technology
Azure in a Day Training: Windows Azure Module 1: Windows Azure Overview Module 2: Development Environment / Portal – DEMO: Signing up for Windows Azure.
Containers, Docker and Virtuozzo
Agenda Azure and Open source Introduction to Containers and Docker. Docker on Azure CoreOS and Why Get Started on Docker.
#msitconf. Damien Caro Technical Evangelist Manager, Что будет, если приложение поместить в контейнер? What happens if the application.
Alfresco deployment with Docker Andrea Agili Software Engineer – Dr Wolf srl Tommaso Visconti DevOps – Dr Wolf srl.
Lucas Jellema JavaOne 2015, San Francisco, 26th October 2015 Java Developer Intro to Environment Management with Vagrant, Puppet, and Docker.
Take an Analytics-Driven Approach to Container Performance Marc Chéné, Principal Product Manager Den Gladkikh (aka outcoldman), Principal Dev Engineer.
Banjot Chanana Sr Director of Product Docker for the Enterprise with Containers as a Service.
Structured Container Delivery Oscar Renalias Accenture Container Lead (NOTE: PASTE IN PORTRAIT AND SEND BEHIND FOREGROUND GRAPHIC FOR CROP)
Docker for Ops: Operationalize Your Apps in Production Vivek Saraswat Sr. Product Evan Hazlett Sr. Software
Intro to Docker Containers
Getting & Running EdgeX Docker Containers
Global Azure Bootcamp 2017 Linz, Austria
INTRO TO Presenter: PhuongNQK.
Containers as a Service with Docker to Extend an Open Platform
Fundamentals Sunny Sharma Microsoft
Bentley Systems, Incorporated
Windows Containers Taylor Brown Principal Lead Program Manager
VAGRANT AND DOCKER AS LEARNING ENVIRONMENTS
Docker and Azure Container Service
Docker Birthday #3.
Intro to Docker Containers
SQL Server Containers: End-to-End
In-Depth Introduction to Docker
Docker – kontejnerizacija na serveru Vedran Vučetić, SPAN
Microservices, Docker, .NET, Windows, Linux, Azure. Oh, My!
Containers and Virtualisation
Andrew Pruski SQL Server & Containers
Drupal VM and Docker4Drupal For Drupal Development Platform
Windows Server & Hyper-V Containers Vaggelis Kappas
Drupal VM and Docker4Drupal as Consistent Drupal Development Platform
9/20/ :55 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Azhagappan Arunachalam
Microservices and Docker
Introduction to Docker
Using docker containers
Azure Container Instances
Oracle DB and Docker Get Your Dockerized Oracle Sandbox Running in the Cloud or On- Premises Martin Knazovicky Dbvisit Software.
Intro to Docker Containers and Orchestration in the Cloud
Virtualization Layer Virtual Hardware Virtual Networking
Developing for the cloud with Visual Studio
Single Container Workloads in Azure
Intro about Contanier and Docker Technology
IBM Containers Docker in the Cloud
Orchestration & Container Management in EGI FedCloud
Openstack-alapú privát felhő üzemeltetés
Docker Some slides from Martin Meyer Vagrant Box:
CloudOpting - Hackathon
Container technology, Microservices, and DevOps
Architecture Agnostic Docker Build Systems
CI/CD Pipelines with Jenkins and Docker
Azure Container Service
Harrison Howell CSCE 824 Dr. Farkas
Container technology, Microservices, and DevOps
Client/Server Computing and Web Technologies
Deploying machine learning models at scale
Building, Debugging & Deploying Containerized
Containers on Azure Peter Lasne Sr. Software Development Engineer
SQL Server on Containers
Presentation transcript:

Introduction to Docker AppDev SIG April 2016 Matthew Favetti

What is Docker? Packages an application into a container Containers share the host OS kernel Not a Virtual Machine (each VM has a separate OS) Including all dependencies (even ones that you didn’t realize you had) Docker engine is the analog to a VM’s hypervisor (virtualbox) Don’t use Docker like a VM (tell about how I started with Docker) Not a replacement for vagrant (vagrant manages VMs)

Why Use Docker? Performance Optimization (Infrastructure) Encapsulation (CI/CD, DevOps) Portability (Cloud) Because there isn’t the overhead of having a Guest OS, containers can be created and started very quickly The docker engine can better manage the system resources across the containers (RAM, disk space) Less overhead means you can run more containers on the same box Your container includes all the libraries, dependencies, and configuration that your app needs to run without changing the host OS environment Run your container anywhere that docker runs Portability to the cloud and across infrastructures

Docker Hub Docker’s analog of GitHub for images instead of code Find images (ubuntu, redis, mysql, mongo, node, postgres, etc) Push / Pull your own images (public) >1 private image is paid Also, Docker Trusted Registry is available if you must maintain control over your own code. Some of the most pulled images Trusted registry is part of paid docker datacenter paid platform

Getting Started Build/push/pull images Run an image to create a container The container runs a command and stops when it exits You can start/stop/restart, attach to the console, view logs, inspect configuration, etc Make changes in the container, commit the changes back to an image Tag images for easy reference

Process Overview

Beyond the Basics Run multiple commands utilizing supervisor (or similar) Networking (map host ports to the container, etc) Data Volumes / Data Volume Containers Persist data Share data among containers Docker swarm (native clustering) Role-based containers (not process based or application based)

Configuration as Code Dockerfile Docker-compose All the steps necessary to build your container “Document” the exact requirements / environment / dependencies of your app Docker-compose Multiple (or single) container apps Abstract command line arguments Hosts file entry example

Docker in the Cloud Provision manually Install Docker Pull the image from Docker Hub (or private registry) Provision using management tools Docker-machine (this is also used to run docker on Windows/OS X) Docker Cloud (formerly Tutum) Universal Control Plane (on premises) Cloud service specific tools AWS EC2 Container Service Azure Container Service Google Container Service (Kubernetes) Also consider the fees of using the particular cloud service itself In addition the different platforms’ container tools have various pricing models UCP is paid from Docker

Quick Demo Run a Simple node.js webserver in a Docker container Create the app Write the Dockerfile Simply by using the official repositories from Docker Hub Write a docker-compose file Add a database