Ajeet Singh Raina
Twitter: @ajeetsraina
GitHub: ajeetraina
Dockercon 18 EU
Announcements & Updates
Dockercon Announcement & Updates
Agenda
00:05 Dockercon Experience Open
00:10 Docker Desktop Enterprise Enterprise Customer
00:15 Compose on Kubernetes Community
00:20 CNAB Community
00:25 Docker Assemble Enterprise Developer
00:30 Docker Application Packages Community
00:35 Demo Open
Dockercon Experience
Dockercon Experience
Docker Desktop Enterprise
Docker Desktop Enterprise
New Commercial
Desktop Product
Company-provided
application templates
Creating production-
Ready container
solution in a secure
way
Configurable Version
Packs
- - App Designer UI
- -
- Packaged as standard
MSI
- Lockable settings via
policy files
- Present developers with
customized and approved
application templates,
ready for coding
Developers IT
Docker Desktop Community Vs Enterprise
Docker Desktop
Community
Docker Desktop
Enterprise
Simplest Path to Container-based Development
Latest Docker Engine
Based on Containerd
Certified Kubernetes
Available for Windows 10
& MacOS
Develop in any Language
& Framework, even
multiple versions
simultaneously
Docker Desktop Community Vs Enterprise
Docker Desktop
Community
Docker Desktop
Enterprise
Production-Ready Environment
Same API & Commands
shared by Developers in
Production
Application Designer interface
to simplify creating &
developing Docker
applications
Swappable Docker Engine
and Kubernetes versions to
match Docker Enterprise
production environments
Application Designer
Docker Desktop Enterprise
Swappable Docker Engine
Docker Desktop Enterprise
Docker Desktop Community Vs Enterprise
Docker Desktop
Community
Docker Desktop
Enterprise
IT Manageability
Maintain & Distribute across
100s of desktops with
standard MSI/PKG installers
Selective configuration
restrictions
Technical Support SLA from
Docker Inc.
Customizable Application
Templates
Customized Application Templates
Docker Desktop Enterprise
Docker Desktop Enterprise is
available for preview in January
with General Availability coming
later in 1H 2019.
Cloud Native Application Bundle
(CNAB)
Primitives(VMs, Containers, Storage)
Low Level APIs(JSON, REST API )
Composite APIs(ARM, Terraform) & Tooling
No single solution for defining and packaging
these Multi-service, Multi-format distributed
applications.
Primitives(VMs, Containers, Storage)
Low Level APIs(JSON, REST API )
Composite APIs(ARM, Terraform) & Tooling
CNAB Package
- A New open source package format specification for Bundling, Installing & Managing
Distributed Apps
- Created in close partnership with Docker, Supported by HashiCorp, Bitnami and more.
- Manage distributed applications using a single installable file, reliably provision
application resources in different environments, and easily manage the application
lifecycle without having to use multiple toolsets.
- Uses Handful of technologies – JSON, Docker containers, and OpenPGP
- A Cloud agnostic ~ Works with everything from Azure to on-prem OpenStack, from
Kubernetes to Swarm, and from Ansible to Terraform
What is CNAB?
https://cnab.io
- An open source reference implementation of a CNAB client
- It is a command line tool that allows you to install and manage CNAB bundles..
- Package and Unpackage distributed apps for deployment on whatever cloud platforms
and services you use.
- Provides all the core capabilities for working with CNAB.
- It can install, upgrade, and uninstall CNAB bundles.
- It can create new bundles, cryptographically sign them, and verify their integrity.
- And as a reference implementation, it provides an example of how you can build CNAB-
based solutions.
Duffle – Package Manager for Cloud
https://duffle.sh
- Microsoft and Docker plan to donate CNAB to an open source
foundation publicly which is expected to happen early next year.
- The first implementation of the spec is an experimental utility
called Docker App, which Docker officially rolled out this
Dockercon.
- Expected to be integrated with Docker Enterprise in near future
Docker’s Future Plan
Docker App CNAB examples
- https://github.com/garethr/docker-app-cnab-
examples
References
From Zero to Docker in seconds
using Docker-assemble
Is a new command that
generates optimized
images from non
dockerized apps
capability to build an image
without a Dockerfile
analyze your app,
dependencies & give you a
sweet Docker image
without authoring
Dockerfiles.
Built on top of buildKit
Auto detect framework,
versions etc. from a config
file (.pom file)
21 3
4 5
> docker assemble
- Enterprise feature for now — NOT in the community version.
- It is available for a couple languages and frameworks (like Java as
demonstrated on Dockercon stage).
- Vs Buildpack? It’s more than just an image (also ports,
healthchecks, volume mounts, etc), and it’s integrated into the
enterprise toolchain. The docker-assemble is sort of an enterprise-
grade buildpack to help with digitalization.
> docker assemble
Docker Application Packages
Simplified approach to share multi-service app(not just Docker Image) to DockerHub
> docker-app
https://github.com/docker/app
http://collabnix.com/how-i-built-elastic-stack-using-docker-
application-packagedocker-app/
https://collabnix.com/a-first-look-at-docker-application-
package-docker-app/
http://collabnix.com/building-helm-chart-for-kubernetes-
cluster-running-on-docker-enterprise-2-0-using-docker-app-
0-6-0/
References
Compose on Kubernetes
Docker Community Edition
All in one development for Swarm and Kubernetes
Familiar Docker CLI & Tools to deploy Swarm &
Kubernetes
Deployment
Updates
Rollback
Logs
Scaling
Docker
Compose
Compose on Kubernetes in Action
https://asciinema.org/a/222312
Reference
•Compose on Kubernetes Guide for Azure AKS.
•Compose for Kubernetes Guide for GKE.
•Compose on Kubernetes Guide for Minikube.
Thank You

Dockercon 2018 EU Updates

  • 1.
    Ajeet Singh Raina Twitter:@ajeetsraina GitHub: ajeetraina Dockercon 18 EU Announcements & Updates
  • 3.
    Dockercon Announcement &Updates Agenda 00:05 Dockercon Experience Open 00:10 Docker Desktop Enterprise Enterprise Customer 00:15 Compose on Kubernetes Community 00:20 CNAB Community 00:25 Docker Assemble Enterprise Developer 00:30 Docker Application Packages Community 00:35 Demo Open
  • 4.
  • 5.
  • 6.
  • 7.
    Docker Desktop Enterprise NewCommercial Desktop Product Company-provided application templates Creating production- Ready container solution in a secure way Configurable Version Packs - - App Designer UI - - - Packaged as standard MSI - Lockable settings via policy files - Present developers with customized and approved application templates, ready for coding Developers IT
  • 8.
    Docker Desktop CommunityVs Enterprise Docker Desktop Community Docker Desktop Enterprise Simplest Path to Container-based Development Latest Docker Engine Based on Containerd Certified Kubernetes Available for Windows 10 & MacOS Develop in any Language & Framework, even multiple versions simultaneously
  • 9.
    Docker Desktop CommunityVs Enterprise Docker Desktop Community Docker Desktop Enterprise Production-Ready Environment Same API & Commands shared by Developers in Production Application Designer interface to simplify creating & developing Docker applications Swappable Docker Engine and Kubernetes versions to match Docker Enterprise production environments
  • 10.
  • 11.
  • 12.
    Docker Desktop CommunityVs Enterprise Docker Desktop Community Docker Desktop Enterprise IT Manageability Maintain & Distribute across 100s of desktops with standard MSI/PKG installers Selective configuration restrictions Technical Support SLA from Docker Inc. Customizable Application Templates
  • 13.
  • 14.
    Docker Desktop Enterpriseis available for preview in January with General Availability coming later in 1H 2019.
  • 15.
  • 16.
    Primitives(VMs, Containers, Storage) LowLevel APIs(JSON, REST API ) Composite APIs(ARM, Terraform) & Tooling No single solution for defining and packaging these Multi-service, Multi-format distributed applications.
  • 17.
    Primitives(VMs, Containers, Storage) LowLevel APIs(JSON, REST API ) Composite APIs(ARM, Terraform) & Tooling CNAB Package
  • 18.
    - A Newopen source package format specification for Bundling, Installing & Managing Distributed Apps - Created in close partnership with Docker, Supported by HashiCorp, Bitnami and more. - Manage distributed applications using a single installable file, reliably provision application resources in different environments, and easily manage the application lifecycle without having to use multiple toolsets. - Uses Handful of technologies – JSON, Docker containers, and OpenPGP - A Cloud agnostic ~ Works with everything from Azure to on-prem OpenStack, from Kubernetes to Swarm, and from Ansible to Terraform What is CNAB? https://cnab.io
  • 19.
    - An opensource reference implementation of a CNAB client - It is a command line tool that allows you to install and manage CNAB bundles.. - Package and Unpackage distributed apps for deployment on whatever cloud platforms and services you use. - Provides all the core capabilities for working with CNAB. - It can install, upgrade, and uninstall CNAB bundles. - It can create new bundles, cryptographically sign them, and verify their integrity. - And as a reference implementation, it provides an example of how you can build CNAB- based solutions. Duffle – Package Manager for Cloud https://duffle.sh
  • 20.
    - Microsoft andDocker plan to donate CNAB to an open source foundation publicly which is expected to happen early next year. - The first implementation of the spec is an experimental utility called Docker App, which Docker officially rolled out this Dockercon. - Expected to be integrated with Docker Enterprise in near future Docker’s Future Plan
  • 21.
    Docker App CNABexamples - https://github.com/garethr/docker-app-cnab- examples References
  • 22.
    From Zero toDocker in seconds using Docker-assemble
  • 23.
    Is a newcommand that generates optimized images from non dockerized apps capability to build an image without a Dockerfile analyze your app, dependencies & give you a sweet Docker image without authoring Dockerfiles. Built on top of buildKit Auto detect framework, versions etc. from a config file (.pom file) 21 3 4 5 > docker assemble
  • 24.
    - Enterprise featurefor now — NOT in the community version. - It is available for a couple languages and frameworks (like Java as demonstrated on Dockercon stage). - Vs Buildpack? It’s more than just an image (also ports, healthchecks, volume mounts, etc), and it’s integrated into the enterprise toolchain. The docker-assemble is sort of an enterprise- grade buildpack to help with digitalization. > docker assemble
  • 25.
  • 28.
    Simplified approach toshare multi-service app(not just Docker Image) to DockerHub > docker-app https://github.com/docker/app
  • 29.
  • 30.
  • 31.
    Docker Community Edition Allin one development for Swarm and Kubernetes
  • 32.
    Familiar Docker CLI& Tools to deploy Swarm & Kubernetes Deployment Updates Rollback Logs Scaling Docker Compose
  • 34.
    Compose on Kubernetesin Action https://asciinema.org/a/222312
  • 35.
    Reference •Compose on KubernetesGuide for Azure AKS. •Compose for Kubernetes Guide for GKE. •Compose on Kubernetes Guide for Minikube.
  • 37.