Intro to Docker Containers

Slides:



Advertisements
Similar presentations
System Center 2012 R2 Overview
Advertisements

FI-WARE – Future Internet Core Platform FI-WARE Cloud Hosting July 2011 High-level description.
Getting Started with Oracle Compute Cloud
Windows Azure Conference 2014 Running Docker on Windows Azure.
Model a Container Runtime environment on Your Mac with VMware AppCatalyst VMworld Fabio Rapposelli
2 © 2015 Pivotal Software, Inc. All rights reserved. 2 Removing Barriers Between Dev and Ops It Takes a Platform VMworld 1 September 2015 Cornelia.
Windows Azure Conference 2014 Deploy your Java workloads on Windows Azure.
Puppet with vSphere Workshop Install, configure and use Puppet on your laptop for vSphere DevOps Billy Lieberman August 1, 2015.
Cisco Consulting Services for Application-Centric Cloud Your Company Needs Fast IT Cisco Application-Centric Cloud Can Help.
#msitconf. Damien Caro Technical Evangelist Manager, Что будет, если приложение поместить в контейнер? What happens if the application.
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
Microsoft Build /9/2017 5:00 AM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY,
1/27/2018 5:13 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Run Azure Services in your datacenter
Intro to Docker Containers
Global Azure Bootcamp 2017 Linz, Austria
DevOps Cloud Native Microservices
Agenda:- DevOps Tools Chef Jenkins Puppet Apache Ant Apache Maven Logstash Docker New Relic Gradle Git.
INTRO TO Presenter: PhuongNQK.
Fundamentals Sunny Sharma Microsoft
Dockerize OpenEdge Srinivasa Rao Nalla.
Windows Containers Taylor Brown Principal Lead Program Manager
Modern Application Platform Windows Server 2016
Docker and Azure Container Service
Windows Server 2016 Secure IaaS Microsoft Build /1/2018 4:00 AM
Hybrid Management and Security
Explore the Basics of setting up your first secure Private Docker Registry This is a Title Slide with Graphic slide ideal for including a picture with.
Docker Birthday #3.
In-Depth Introduction to Docker
Containers and Virtualisation
What is all the fuss over Containers?
Andrew Pruski SQL Server & Containers
Containers in HPC By Raja.
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.
Build /21/2018 © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION.
Why DevOps Success Depends on the Right Infrastructure.
Microservices and Docker
Introduction to Docker
Using docker containers
Oracle DB and Docker Get Your Dockerized Oracle Sandbox Running in the Cloud or On- Premises Martin Knazovicky Dbvisit Software.
Microsoft Ignite NZ October 2016 SKYCITY, Auckland.
Confidential – Oracle Internal/Restricted/Highly Restricted
Intro to Docker Containers and Orchestration in the Cloud
OpenWorld 2016 Docker Agility in the Cloud
Microsoft Ignite NZ October 2016 SKYCITY, Auckland.
Developing for the cloud with Visual Studio
Simplified Development Toolkit
Intro about Contanier and Docker Technology
Learn. Imagine. Build. .NET Conf
Microsoft Virtual Academy
IBM Containers Docker in the Cloud
Orchestration & Container Management in EGI FedCloud
Openstack-alapú privát felhő üzemeltetés
OpenShift vs. Vanilla k8s on OpenStack IaaS
Docker Some slides from Martin Meyer Vagrant Box:
CloudOpting - Hackathon
Introduction to Docker
DEVOPS & THE FUTURE OF TESTING
SUSE CaaS and Dell EMC.
Oracle Container Cloud Service made easy HROUG Conference 2018
OpenStack Summit Berlin – November 14, 2018
Azure Container Service
Microsoft Virtual Academy
Containers on Azure Peter Lasne Sr. Software Development Engineer
Presentation transcript:

Intro to Docker Containers June, 2017 Mike Raab Senior Principal Product Manager Oracle Container Cloud Service Oracle Container Group Austin, Texas @mikeraab

2017 Oracle Cloud Platform Innovation Awards: Now open! Be an award winner in one of these categories: Accelerate Application Development Move Workloads to Cloud Connect and Extend Applications Innovate with Enterprise Analytics Modernize Enterprise Security Transform System Management Transform Data Management Data Integration and Governance Are you using Oracle Cloud Platform to deliver unique business value? Your name here! Accelerate Application Development: http://egret.oracle- forms.development.c66.me/modern_application_developments/new Move workloads to cloud: http://egret.oracle- forms.development.c66.me/move_workloads_to_clouds/new Connect and Extend Applications: http://egret.oracle- forms.development.c66.me/content_and_extend_applications/new Innovate with Enterprise Analytics: http://egret.oracle- forms.development.c66.me/innovate_enterprise_analytics/new Modernize Enterprise Security: http://egret.oracle- forms.development.c66.me/modernize_enterprise_securities/new Transform System Management: http://egret.oracle- forms.development.c66.me/transform_systems_managements/new Transform Data Management: http://egret.oracle- forms.development.c66.me/transform_data_managements/new Modernize through Data Integration and Governance: http://egret.oracle- forms.development.c66.me/modernize_through_data_integration_and_governance/new Nomination deadline: July 10, 2017 WIN A FREE PASS TO ORACLE OPENWORLD 2017 Additional information and nomination forms: www.oracle.com/corporate/awards/nominations/cloud-platform.html Innovation-Cloud-Platform_ww_grp@oracle.com

Copyright © 2017 Oracle and/or its affiliates. All rights reserved

Copyright © 2017 Oracle and/or its affiliates. All rights reserved Program Agenda 1 History of Containers Excellent Use Cases for Containers Basic Architecture and Nomenclature Why Docker is Hot Additional Resources Q&A 2 3 4 5 6 Copyright © 2017 Oracle and/or its affiliates. All rights reserved

Copyright © 2017 Oracle and/or its affiliates. All rights reserved History of Containers Copyright © 2017 Oracle and/or its affiliates. All rights reserved

History and Multi-Dimensional Evolution of Computing Development Process Application Architecture Deployment and Packaging Application Infrastructure Waterfall Monolithic Physical Server Datacenter Agile N-Tier Virtual Servers Hosted DevOps Microservices Containers Cloud Copyright © 2017 Oracle and/or its affiliates. All rights reserved

Historic Timeline of Unix Containers Docker is both a Company and Technology While Docker has been playing a key role in adoption of the Linux container technology, they did not invent the concept of containers However, they have made the technology consumable by mere humans Historic Timeline of Unix Containers OCI 2015 rkt 2014 Docker 2013 LMCTFY 2013 Warden 2011 LCX 2008 AIX (6.1)WPARS 2007 cgroups in Linux Kernel (2.6.24) 2007 Process Containers 2006 openvz 2005 Oracle Solaris Zones 2004 Linux vserver 2001 FreeBSD Jails 2000 UNIX V7 added chroot 1979 Copyright © 2017 Oracle and/or its affiliates. All rights reserved

Excellent Use Cases for Containers Ready to Run Application Stacks Excellent for Dev/Test setups Deployment in Seconds, not Hours/Days Start Up, Tear Down Quickly Front-End App Servers Highly horizontally scalable Cattle Not Pets Fast A/B, Rolling Deployments Optimize CX Traditional Technologies - MW/Backend New App Dev & Microservices Refactor all or part of legacy app Containers are great for Microservices Server Density Containers can use dynamic ports Run many of the same app on a server instead of one per VM One-Time Run Jobs and Analytics Run the Job / Analysis and quit Copyright © 2017 Oracle and/or its affiliates. All rights reserved

How Containers are Being Used – Survey Says: Developer productivity a top use case today Building out CI/CD pipelines Consistent container image moves through pipeline Preventing “it worked in dev” syndrome Application modernization and portability are also key adoption drivers (Prem <-> cloud) SOURCE: THE EVOLUTION OF THE MODERN SOFTWARE SUPPLY CHAIN, DOCKER SURVEY 2016 Copyright © 2017 Oracle and/or its affiliates. All rights reserved

Basic Architecture and Nomenclature Copyright © 2017 Oracle and/or its affiliates. All rights reserved

Virtual Machines vs. Containers VMs Virtual Machines Each virtual machine (VM) includes the app, the necessary binaries and libraries and an entire guest operating system Containers Containers include the app & all of its dependencies, but share the kernel with other containers. Run as an isolated process in userspace on the host OS Not tied to any specific infrastructure – containers run on any computer, infrastructure and cloud. Copyright © 2017 Oracle and/or its affiliates. All rights reserved

Copyright © 2017 Oracle and/or its affiliates. All rights reserved Docker Architecture Docker client – Command Line Interface (CLI) for interfacing with the Docker Dockerfile – Text file of Docker instructions used to assemble a Docker Image Image – Hierarchies of files built from a Dockerfile, the file used as input to the docker build command Container – Running instance of an Image using the docker run command Registry – Image repository Source: Docker docs and https://docs.docker.com/glossary/ Copyright © 2017 Oracle and/or its affiliates. All rights reserved

Copyright © 2017 Oracle and/or its affiliates. All rights reserved Docker Engine Container execution and admin Uses Linux Kernel namespaces and control groups Namespaces provide for isolated workspace Source: Docker docs and https://docs.docker.com/glossary/ Copyright © 2017 Oracle and/or its affiliates. All rights reserved

Docker Images An image is a collection of files and some meta data Images are comprised of multiple layers, multiple layers referencing/based on another image (Union File System) Each image contains software you want to run Every image contains a base layer Layers are read only Source: Docker docs and https://docs.docker.com/glossary/ Copyright © 2017 Oracle and/or its affiliates. All rights reserved Copyright © 2017 Oracle and/or its affiliates. All rights reserved

Dockerfile – Text file (recipe) used to create Docker images Example Hello World Dockerfile Docker build image CLI example FROM nginx:1.10.1-alpine Add index.html /usr/share/nginx/html/index.html # Override the nginx start from the base container COPY start.sh /start.sh RUN chmod +x /start.sh ENTRYPOINT ["/start.sh"] $ docker build -t helloworld:1.0 . NOTE: The “.” references Dockerfile in local directory Source: https://github.com/scottsbaldwin/docker-hello-world/blob/master/Dockerfile Copyright © 2017 Oracle and/or its affiliates. All rights reserved Oracle Confidential – Restricted

Copyright © 2017 Oracle and/or its affiliates. All rights reserved Docker Hub Docker Inc. Repository public and private images Enables images to be shared and moved off the laptop Example usage: $ docker tag docker-whale:latest username/docker-whale:latest $ docker push username/docker-whale:latest $ docker pull username/docker-whale:latest Copyright © 2017 Oracle and/or its affiliates. All rights reserved

Docker CLI – Common / useful commands docker build : build docker image from Dockerfile docker run : run docker image docker logs : show log data for a running or stopped container docker ps : list running docker containers (analogous to ps) docker ps –a : list all containers including not running docker images : list all images on the local volume docker rm : remove/delete a container | docker rmi : remove/delete an image docker tag : name a docker image docker login : login to registry docker push/pull : push or pull volumes to/from Docker Registries docker inspect : return container run time configuration parameter metadata See the docs here: https://docs.docker.com/edge/engine/reference/commandline/docker/ Copyright © 2017 Oracle and/or its affiliates. All rights reserved

Copyright © 2017 Oracle and/or its affiliates. All rights reserved Docker Run Pulls the image and runs it as a container Examples: Simple: $ docker run hello-world Complex: $ docker run -d  --restart=always  -p=443:5000/tcp   -e="REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt"   -e="REGISTRY_HTTP_TLS_KEY=/certs/registry.example.com.key"   -e="REGISTRY_AUTH=htpasswd"   -e="REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd"   -e="REGISTRY_AUTH_HTPASSWD_REALM=Our Test Registry"   -v=/home/opc/certs:/certs   -v=/home/opc/auth:/auth   -v=/home/opc/registry:/var/lib/registry  "registry:2" Copyright © 2017 Oracle and/or its affiliates. All rights reserved

Copyright © 2017 Oracle and/or its affiliates. All rights reserved Docker Compose Docker Compose Docker Tool for defining and running multi-container Docker applications Reference file defined in YAML docker-compose.yml $ docker-compose up -d Copyright © 2017 Oracle and/or its affiliates. All rights reserved

Copyright © 2017 Oracle and/or its affiliates. All rights reserved Why Docker is Hot Copyright © 2017 Oracle and/or its affiliates. All rights reserved

Why Docker is Hot – Its simple, Devs love it Dev/Test of Legacy Apps New App Dev (including parts of legacy apps) Code Agility, CI/CD Pipeline, DevOps Adoption of Open Source Microservices & Cloud Native Apps Copyright © 2017 Oracle and/or its affiliates. All rights reserved

Copyright © 2017 Oracle and/or its affiliates. All rights reserved Why Containers? Developers care because: IT cares because: Quickly create ready-to-run packaged applications, low cost deployment and replay Automate testing, integration, packaging Reduce / eliminate platform compatibility issues (“It works in dev!”) Support next gen applications (microservices) Improve speed and frequency of releases, reliability of deployments Makes app lifecycle efficient, consistent and repeatable – configure once, run many times Eliminate environment inconsistencies between development, test, production Improve production application resiliency and scale out / in on demand Copyright © 2017 Oracle and/or its affiliates. All rights reserved

Containers are Portable, but How about Advanced Functions Orchestration, Monitoring, Operations, Service Discovery Docker Environment Provisioning Fragmented Market Solutions Kubernetes Swarm, Docker Data Center, Docker Cloud Consul, ETCD, Docker Networking etc + Copyright © 2017 Oracle and/or its affiliates. All rights reserved

Oracle Cloud and Docker Containers Compute CS Container CS Application Container CS DIY Container Management Oracle Managed Container Service Docker-based Cloud Polyglot Platform IaaS CaaS PaaS Copyright © 2017 Oracle and/or its affiliates. All rights reserved

The Docker DevOps Cycle Plan Code Build Test Release Deploy Operate Monitor OPC services featuring: Oracle Developer Cloud Service Now Includes Docker Image Build Function* Oracle Container Cloud Service Deploy, Operate, Monitor Container CS Dev CS Copyright © 2017 Oracle and/or its affiliates. All rights reserved

Copyright © 2017 Oracle and/or its affiliates. All rights reserved Additional Resources Resource Location Entry Level Hands-on Lab https://github.com/oracle/cloud-native-devops-workshop/tree/master/containers/docker001 Oracle Container Cloud Service https://cloud.oracle.com/en_US/container Official Image Registries Oracle Images on the Docker Store Oracle Container Registry Copyright © 2017 Oracle and/or its affiliates. All rights reserved

Questions? Confidential – Oracle Internal/Restricted/Highly Restricted