Happy 5th Birthday Docker! #dockerbday
March 19-25, 2018
Docker Bday #5 Celebrations Worldwide!
100+ user
and
customer
events
worldwide!
Thank you Docker Tampere Sponsors!
Your generosity is much appreciated!
www.eficode.com www.tamk.fi
Docker Momentum
Thank You for 5 Amazing Years!
Docker EE
commercial
customers
450+
Job listings on
LinkedIn
15K
Container
downloads
37B 3.5M 200+
Active Docker
user groups
Dockerized
apps
Thank you Docker Tampere Mentors!
Mentors please stand up :)
Mentors are advanced
Docker users here to answer
your Qs and help guide you
through the labs!
Just raise your hand if you
need help.
https://www.linkedin.com/in/sakarihoisko/
https://www.linkedin.com/in/kaijokiniemi/
https://www.linkedin.com/in/samipesonen/
https://www.linkedin.com/in/kirsijeromaa/
https://www.linkedin.com/in/reino-pesonen/
https://www.linkedin.com/in/mikki-levon/
https://www.linkedin.com/in/heidi-teelahti-4
7a563a9/
https://www.linkedin.com/in/maunoahlgren/
Take a #dockerselfie
Say cheese!
1. Stand in front of / around the bday banner
2. Take an awesome selfie
3. Post on twitter & instagram using
#dockerbday
The Docker Journey to Containerization
Getting Started
1st Project
Scaling Out
New Innovation
Where are you? And where do you want to go?
Event Agenda
We have a great event planned for you :)
16:00 - Doors Open
16.05 - Welcome. Brief intro, what’s new in Docker.
~17:00 - Self-paced Lab and Course session with cake&etc...
20:00 - Secutiry man shows us out.
20:01 - Police forces to step out!
Docker Overview
Containers are the “Fastest Growing Cloud Enabling Technology”
By 2020, more than 50% of global
organizations will be running
containers in production.
-Gartner
Title source: 451 Research
2017
24B
PULLS
The “Matrix from Hell” Breeds Complexity
The “Matrix from Hell” Breeds Complexity — Containers Cut Complexity
Static Website ? ? ? ? ? ? ? ?
Web Frontend ? ? ? ? ? ? ? ?
Background
Workers
? ? ? ? ? ? ? ?
User DB ? ? ? ? ? ? ? ?
Analytics DB ? ? ? ? ? ? ? ?
Queue ? ? ? ? ? ? ? ?
Desktop Test/QA
Cluster
Production
Cluster
Public
Cloud
Data
Center
Mainframe Windows
Server
Edge
Device
The “Matrix from Hell” Breeds Complexity
The “Matrix from Hell” Breeds Complexity
Static Website ? ? ? ? ? ? ?
Web Frontend ? ? ? ? ? ? ?
Background
Workers
? ? ? ? ? ? ?
User DB ? ? ? ? ? ? ?
Analytics DB ? ? ? ? ? ? ?
Queue ? ? ? ? ? ? ?
Desktop Test/QA
Cluster
Production
Cluster
Public
Cloud
Data
Center
Mainframe Windows
Server
Edge
Device
— Containers Cut Complexity
Maintenance and Complexity Drains the Budget, So Innovation Suffers
* Average number infrastructures in the enterprise (on-prem and cloud)
** Forrester, CIO and the emerging Digital Crisis, 2018
*** CloudPhysics, Global IT Data Lake Report, Q4, ‘16
Sources: IDC “The Cost of Retaining Aging IT Infrastructure”, RightScale 2017 State of the Cloud Report
Stalled Initiatives
• Modernizing legacy apps
• Cloud migration
• Server consolidation
• Faster s/w time to market
8+
IT Silos*
1000’s
of apps
<20% server
utilization***
IT demands
increasing!
!
60% of CIOs say
“We’re behind in digital
transformation”**
INNOVATION
20%
MAINTENANCE
80%
Server
Hypervisor
App App App App
O/S OS OS OS
Containers Can Raise
Utilization and Cut
Infrastructure Costs
Advantage #1: Infrastructure
Containers Expand Budgets by Delivering Savings
Server
Hypervisor
OS OS OS OS
App App App App
Multiple Operating Systems
Lower Server Utilization
“Docker” Engine
App App App App
App App App App
App App App App
OS
VM and OS Licenses
Server Count
Power, Space, Cooling
Admin
Reducing
Advantage #2: Productivity
Faster Development and Simpler Operations
OPERATIONS
Speed
Your Choice
Savings
DEVELOPMENT
The Docker Enterprise Edition (EE)
Difference
400+ Build Their Containerization Strategy with Docker Enterprise Edition
Financial
Services
Healthcare
& Science
Tech
Oil & Gas /
Energy
Insurance
Public
Sector
Docker allows GSK to support a multitude of tools, technologies and interfaces.
Ranjith Raghunath, GlaxoSmithKline
Docker helped us achieve a much better security position.
Jan Hedstrom, Assa Abloy
…Everyone wants to work with Docker and it’s a change of mindset in the company.
Thomas Boussardon, Societe Generale
Only Docker Delivers All Three Core Enterprise Requirements
• Your app in any cloud,
including Hybrid
• No lock-in
• Risk mitigation
• Use Docker native tools …
or almost any you prefer
Choice Security Agility
• Governance
• Chain of custody
• Role-based access control
• Threat scanning
• Standardized and unified
operations
• Dev to Ops consistency
• Rapid Delivery and response
• Cost efficiency
Docker EE Ensures Choice, Security and Agility
To Enable Your Key IT Initiatives
Modernize Software Supply Chain
Modernize Existing or “Traditional”
Applications (“MTA”)
Cloud Strategies
Avoiding lock-in
Reduce Data Center Expenses
Faster Application Development
and Delivery
With an Enterprise-Ready Container Platform
Support and
Certification
AutomationGovernanceSecurity
• Threat Scanning
• Controlled Code
Deployment
• Encryption
• Secrets Mgmt
• Image Mgmt
• Support for 3rd
party security
• Role-based access
control (RBAC)
• Policy Mgmt
• App Config Mgmt
• Forensic Image
History
• Controlled Code
Deployment
• Orchestration
• Built-in app
reliability/High Avail.
• Policy-based
automation
• Auto healing
• Enterprise-grade
support
• Certified Plug-ins
and Infrastructure
• Certified ISV apps
• Certified
professionals
Server
OS
App
Docker Engine
Docker Enterprise Edition Enables All Application Types
Enable a uniform management and security model for any app across an infrastructure
Traditional Microservices ISV apps
Big Data
ML
AI
...moreEdge & IoT
Cloud VM Bare Metal Edge Device
Docker Platform
What’s New in Docker Enterprise Edition
Docker + Kubernetes
Docker adds Kubernetes support
Customers asked Docker:
• To have both Swarm and Kubernetes available for the pockets within their
organizations that are using it
• To make Kubernetes easier to manage
• For a Docker Dev to Ops experience with Kubernetes
• For advanced capabilities of Docker EE around the secure software supply chain,
high availability, and automation for Kubernetes
• To make Kubernetes management available across Windows, multiple Linux distros,
and clouds
Continuation of Docker’s strategy of extending the Docker EE platform for
maximum choice
PLUGINS
MainframeWindows
PLATFORMS ORCHESTRATORS
Seamless Integration of Kubernetes to Docker Enterprise Edition
Docker EE is designed to support multiple
orchestrators:
● EE Manager Nodes are both Swarm
managers and Kubernetes masters to
enable high availability
● Every worker node is both Kubernetes
API- and Swarm API-ready
● One management plane driving:
○ Secure software supply chain
○ Secure multi-tenancy
○ Secure and highly available node
management
Kubelet
Secure Cluster Management
(Swarm-Based)
App Scheduler
Swarm KubernetesOR
Kubelet
Docker Nodes
KubeletKubelet
Docker EE Orchestration
By supporting both Swarm and Kubernetes orchestration, Docker EE brings
all applications to the same platform
Enterprise
Applications
+ SOA
Web Apps/
12-factor
Microservices
SWARM KUBERNETES
DOCKER ENTERPRISE EDITION
Docker for Mac / Docker for Windows adds Kubernetes option
● Same Docker developer workflow used by millions
● Developers have freedom to build Swarm- or Kubernetes-based applications on a local
machine with the same tool
● Nothing new to install, no change for existing Docker developers
Docker Delivers a Consistent Experience from Dev to Ops
29
DEVELOPERS IT OPERATIONS
Managed by Docker EE
On-Prem Cloud
Docker for Mac
Docker for Windows
Any App, Any Format
● Separation of concerns - keeping
Dev and Ops aligned on
responsibilities
● Same operating model across
different app types and
infrastructure platforms
Let’s Get Started!
Learn Docker: Bday #5 Hands-On-Labs
March 2018
● Docker 101 - Linux
● Docker 101 - Windows
Description: intro to Docker on Linux or
Windows that takes you through the
basics of the platform, building your
first containers, and deploying them in
an orchestration system.
Learning Outcome: You’ll come out
understanding the basics of Docker
and orchestration.
Learn Docker: Bday #5 Hands-On-Labs
● Kubernetes on Docker for Mac and Docker for Windows
Description: Covers the basics of using Kubernetes on Docker for Mac and
Docker for Windows.
Learning Outcome: Understanding of basic concepts of Kubernetes and how to
create your cluster on your desktop.
● Modernizing Traditional Java Apps
● Modernizing Traditional .NET / Windows Apps
Description: Take a traditional, Java EE or ASP.NET monolithic application and
containerize it. Then break out a few pieces to have a more modern, modular
deployment of the application built on Docker EE.
Learning Outcome: Understand of the basics of application
modernization and Docker EE.
Learn Docker: Bday #5 Hands-On-Labs
● Deploying Multi-OS applications with Docker EE
Description: Deploy and refactor a traditional Java application on Linux,
into a microservice application, some of the services in in Java on Linux,
some in .NET on Windows, and deploy the application on a hybrid
Docker Enterprise Edition cluster with Linux and Windows nodes.
Learning Outcome: People who take this lab will learn the basics of the
Docker EE platform including secure images and orchestration using
both Swarm and Kubernetes.
Get Started Now
Note! These are not same than in training but similars.
Basic exersices with play-with-docker and sources:
https://github.com/dockersamples/
Play-with-docker or play-with-kubernetes:
https://labs.play-with-docker.com/
https://labs.play-with-k8s.com/
Join the slack channel - #5th-bday - on the Docker Community Slack team!
(for a slack invite register here: https://community.docker.com)
Don’t miss the container industry event of the year!
Register now: https://2018.dockercon.com/
Special 10% Discount Code: xxxxxxxxx
*good for full conference passes only
Check out the Docker blog for an early preview of the agenda:
https://blog.docker.com
Get Docker Certified!
Continue your learning journey and set yourself apart
Go to http://success.docker.com/certification
101 - Back to Basics with Eficode !
Official Docker partner
...next slides are just samples from Eficode docker training what we create in house…
Started from basics:
https://www.slideshare.net/SakariHoisko/kontita-koodisi-dockerize-everything-continuous-delivery-with-docker-in-nut-shell
...continuing with topics like:
https://www.slideshare.net/SakariHoisko/helsinki-dockermeetup-12102017orchestratedockerwithdocker
https://www.slideshare.net/SakariHoisko/apiops-tampere-meetup-17112017-serverlesswithopenfaas
More info from: mauno.ahlgren@eficode.com
Linux Docker Engine
(daemon)
Linux Docker Engine
(daemon)
DOCKER ARCHITECTURE
docker
CLI to control
containers
Linux Docker Engine
(daemon)
docker-machine
CLI to Docker Linux
infra handling
Manages virtual machines
(create, remove, start, stop,
connect…)
Manages Docker
content
Container(s)
Image(s)
Network(s)
Data
volume(s)
RESTAPI
DOCKER FLOW
FROM nginx:latest
…
EXPOSE 8080
Dockerfile
mynginx
Image
build nginx with port 8080
Container (worker1)
nginx with port 8080
Container (worker2)
nginx with port 8080
Container (load balancing)
run -p 81:8080
run -p 82:8080
run
-p
80:8080
-v
config
Host side
port 81
Host side
port 82
Host side port 80
User connects
from Internet
Registry (e.g. Docker Hub)
pull push

Tampere Docker meetup - Happy 5th Birthday Docker

  • 1.
    Happy 5th BirthdayDocker! #dockerbday March 19-25, 2018
  • 2.
    Docker Bday #5Celebrations Worldwide! 100+ user and customer events worldwide!
  • 3.
    Thank you DockerTampere Sponsors! Your generosity is much appreciated! www.eficode.com www.tamk.fi
  • 4.
    Docker Momentum Thank Youfor 5 Amazing Years! Docker EE commercial customers 450+ Job listings on LinkedIn 15K Container downloads 37B 3.5M 200+ Active Docker user groups Dockerized apps
  • 5.
    Thank you DockerTampere Mentors! Mentors please stand up :) Mentors are advanced Docker users here to answer your Qs and help guide you through the labs! Just raise your hand if you need help. https://www.linkedin.com/in/sakarihoisko/ https://www.linkedin.com/in/kaijokiniemi/ https://www.linkedin.com/in/samipesonen/ https://www.linkedin.com/in/kirsijeromaa/ https://www.linkedin.com/in/reino-pesonen/ https://www.linkedin.com/in/mikki-levon/ https://www.linkedin.com/in/heidi-teelahti-4 7a563a9/ https://www.linkedin.com/in/maunoahlgren/
  • 6.
    Take a #dockerselfie Saycheese! 1. Stand in front of / around the bday banner 2. Take an awesome selfie 3. Post on twitter & instagram using #dockerbday
  • 7.
    The Docker Journeyto Containerization Getting Started 1st Project Scaling Out New Innovation Where are you? And where do you want to go?
  • 8.
    Event Agenda We havea great event planned for you :) 16:00 - Doors Open 16.05 - Welcome. Brief intro, what’s new in Docker. ~17:00 - Self-paced Lab and Course session with cake&etc... 20:00 - Secutiry man shows us out. 20:01 - Police forces to step out!
  • 9.
  • 10.
    Containers are the“Fastest Growing Cloud Enabling Technology” By 2020, more than 50% of global organizations will be running containers in production. -Gartner Title source: 451 Research 2017 24B PULLS
  • 11.
    The “Matrix fromHell” Breeds Complexity
  • 12.
    The “Matrix fromHell” Breeds Complexity — Containers Cut Complexity
  • 13.
    Static Website ?? ? ? ? ? ? ? Web Frontend ? ? ? ? ? ? ? ? Background Workers ? ? ? ? ? ? ? ? User DB ? ? ? ? ? ? ? ? Analytics DB ? ? ? ? ? ? ? ? Queue ? ? ? ? ? ? ? ? Desktop Test/QA Cluster Production Cluster Public Cloud Data Center Mainframe Windows Server Edge Device The “Matrix from Hell” Breeds Complexity
  • 14.
    The “Matrix fromHell” Breeds Complexity Static Website ? ? ? ? ? ? ? Web Frontend ? ? ? ? ? ? ? Background Workers ? ? ? ? ? ? ? User DB ? ? ? ? ? ? ? Analytics DB ? ? ? ? ? ? ? Queue ? ? ? ? ? ? ? Desktop Test/QA Cluster Production Cluster Public Cloud Data Center Mainframe Windows Server Edge Device — Containers Cut Complexity
  • 15.
    Maintenance and ComplexityDrains the Budget, So Innovation Suffers * Average number infrastructures in the enterprise (on-prem and cloud) ** Forrester, CIO and the emerging Digital Crisis, 2018 *** CloudPhysics, Global IT Data Lake Report, Q4, ‘16 Sources: IDC “The Cost of Retaining Aging IT Infrastructure”, RightScale 2017 State of the Cloud Report Stalled Initiatives • Modernizing legacy apps • Cloud migration • Server consolidation • Faster s/w time to market 8+ IT Silos* 1000’s of apps <20% server utilization*** IT demands increasing! ! 60% of CIOs say “We’re behind in digital transformation”** INNOVATION 20% MAINTENANCE 80%
  • 16.
    Server Hypervisor App App AppApp O/S OS OS OS Containers Can Raise Utilization and Cut Infrastructure Costs Advantage #1: Infrastructure Containers Expand Budgets by Delivering Savings Server Hypervisor OS OS OS OS App App App App Multiple Operating Systems Lower Server Utilization “Docker” Engine App App App App App App App App App App App App OS VM and OS Licenses Server Count Power, Space, Cooling Admin Reducing
  • 17.
    Advantage #2: Productivity FasterDevelopment and Simpler Operations OPERATIONS Speed Your Choice Savings DEVELOPMENT
  • 18.
    The Docker EnterpriseEdition (EE) Difference
  • 19.
    400+ Build TheirContainerization Strategy with Docker Enterprise Edition Financial Services Healthcare & Science Tech Oil & Gas / Energy Insurance Public Sector
  • 20.
    Docker allows GSKto support a multitude of tools, technologies and interfaces. Ranjith Raghunath, GlaxoSmithKline Docker helped us achieve a much better security position. Jan Hedstrom, Assa Abloy …Everyone wants to work with Docker and it’s a change of mindset in the company. Thomas Boussardon, Societe Generale Only Docker Delivers All Three Core Enterprise Requirements • Your app in any cloud, including Hybrid • No lock-in • Risk mitigation • Use Docker native tools … or almost any you prefer Choice Security Agility • Governance • Chain of custody • Role-based access control • Threat scanning • Standardized and unified operations • Dev to Ops consistency • Rapid Delivery and response • Cost efficiency Docker EE Ensures Choice, Security and Agility
  • 21.
    To Enable YourKey IT Initiatives Modernize Software Supply Chain Modernize Existing or “Traditional” Applications (“MTA”) Cloud Strategies Avoiding lock-in Reduce Data Center Expenses Faster Application Development and Delivery
  • 22.
    With an Enterprise-ReadyContainer Platform Support and Certification AutomationGovernanceSecurity • Threat Scanning • Controlled Code Deployment • Encryption • Secrets Mgmt • Image Mgmt • Support for 3rd party security • Role-based access control (RBAC) • Policy Mgmt • App Config Mgmt • Forensic Image History • Controlled Code Deployment • Orchestration • Built-in app reliability/High Avail. • Policy-based automation • Auto healing • Enterprise-grade support • Certified Plug-ins and Infrastructure • Certified ISV apps • Certified professionals Server OS App Docker Engine
  • 23.
    Docker Enterprise EditionEnables All Application Types Enable a uniform management and security model for any app across an infrastructure Traditional Microservices ISV apps Big Data ML AI ...moreEdge & IoT Cloud VM Bare Metal Edge Device Docker Platform
  • 24.
    What’s New inDocker Enterprise Edition Docker + Kubernetes
  • 25.
    Docker adds Kubernetessupport Customers asked Docker: • To have both Swarm and Kubernetes available for the pockets within their organizations that are using it • To make Kubernetes easier to manage • For a Docker Dev to Ops experience with Kubernetes • For advanced capabilities of Docker EE around the secure software supply chain, high availability, and automation for Kubernetes • To make Kubernetes management available across Windows, multiple Linux distros, and clouds Continuation of Docker’s strategy of extending the Docker EE platform for maximum choice PLUGINS MainframeWindows PLATFORMS ORCHESTRATORS
  • 26.
    Seamless Integration ofKubernetes to Docker Enterprise Edition Docker EE is designed to support multiple orchestrators: ● EE Manager Nodes are both Swarm managers and Kubernetes masters to enable high availability ● Every worker node is both Kubernetes API- and Swarm API-ready ● One management plane driving: ○ Secure software supply chain ○ Secure multi-tenancy ○ Secure and highly available node management Kubelet Secure Cluster Management (Swarm-Based) App Scheduler Swarm KubernetesOR Kubelet Docker Nodes KubeletKubelet Docker EE Orchestration
  • 27.
    By supporting bothSwarm and Kubernetes orchestration, Docker EE brings all applications to the same platform Enterprise Applications + SOA Web Apps/ 12-factor Microservices SWARM KUBERNETES DOCKER ENTERPRISE EDITION
  • 28.
    Docker for Mac/ Docker for Windows adds Kubernetes option ● Same Docker developer workflow used by millions ● Developers have freedom to build Swarm- or Kubernetes-based applications on a local machine with the same tool ● Nothing new to install, no change for existing Docker developers
  • 29.
    Docker Delivers aConsistent Experience from Dev to Ops 29 DEVELOPERS IT OPERATIONS Managed by Docker EE On-Prem Cloud Docker for Mac Docker for Windows Any App, Any Format ● Separation of concerns - keeping Dev and Ops aligned on responsibilities ● Same operating model across different app types and infrastructure platforms
  • 30.
  • 31.
    Learn Docker: Bday#5 Hands-On-Labs March 2018 ● Docker 101 - Linux ● Docker 101 - Windows Description: intro to Docker on Linux or Windows that takes you through the basics of the platform, building your first containers, and deploying them in an orchestration system. Learning Outcome: You’ll come out understanding the basics of Docker and orchestration.
  • 32.
    Learn Docker: Bday#5 Hands-On-Labs ● Kubernetes on Docker for Mac and Docker for Windows Description: Covers the basics of using Kubernetes on Docker for Mac and Docker for Windows. Learning Outcome: Understanding of basic concepts of Kubernetes and how to create your cluster on your desktop. ● Modernizing Traditional Java Apps ● Modernizing Traditional .NET / Windows Apps Description: Take a traditional, Java EE or ASP.NET monolithic application and containerize it. Then break out a few pieces to have a more modern, modular deployment of the application built on Docker EE. Learning Outcome: Understand of the basics of application modernization and Docker EE.
  • 33.
    Learn Docker: Bday#5 Hands-On-Labs ● Deploying Multi-OS applications with Docker EE Description: Deploy and refactor a traditional Java application on Linux, into a microservice application, some of the services in in Java on Linux, some in .NET on Windows, and deploy the application on a hybrid Docker Enterprise Edition cluster with Linux and Windows nodes. Learning Outcome: People who take this lab will learn the basics of the Docker EE platform including secure images and orchestration using both Swarm and Kubernetes.
  • 34.
    Get Started Now Note!These are not same than in training but similars. Basic exersices with play-with-docker and sources: https://github.com/dockersamples/ Play-with-docker or play-with-kubernetes: https://labs.play-with-docker.com/ https://labs.play-with-k8s.com/ Join the slack channel - #5th-bday - on the Docker Community Slack team! (for a slack invite register here: https://community.docker.com)
  • 35.
    Don’t miss thecontainer industry event of the year! Register now: https://2018.dockercon.com/ Special 10% Discount Code: xxxxxxxxx *good for full conference passes only Check out the Docker blog for an early preview of the agenda: https://blog.docker.com
  • 36.
    Get Docker Certified! Continueyour learning journey and set yourself apart Go to http://success.docker.com/certification
  • 37.
    101 - Backto Basics with Eficode ! Official Docker partner ...next slides are just samples from Eficode docker training what we create in house… Started from basics: https://www.slideshare.net/SakariHoisko/kontita-koodisi-dockerize-everything-continuous-delivery-with-docker-in-nut-shell ...continuing with topics like: https://www.slideshare.net/SakariHoisko/helsinki-dockermeetup-12102017orchestratedockerwithdocker https://www.slideshare.net/SakariHoisko/apiops-tampere-meetup-17112017-serverlesswithopenfaas More info from: mauno.ahlgren@eficode.com
  • 38.
    Linux Docker Engine (daemon) LinuxDocker Engine (daemon) DOCKER ARCHITECTURE docker CLI to control containers Linux Docker Engine (daemon) docker-machine CLI to Docker Linux infra handling Manages virtual machines (create, remove, start, stop, connect…) Manages Docker content Container(s) Image(s) Network(s) Data volume(s) RESTAPI
  • 39.
    DOCKER FLOW FROM nginx:latest … EXPOSE8080 Dockerfile mynginx Image build nginx with port 8080 Container (worker1) nginx with port 8080 Container (worker2) nginx with port 8080 Container (load balancing) run -p 81:8080 run -p 82:8080 run -p 80:8080 -v config Host side port 81 Host side port 82 Host side port 80 User connects from Internet Registry (e.g. Docker Hub) pull push