its not just about the container...its not (just) about the container rotterdam, june 2019 kal de...
TRANSCRIPT
Its not (just) about
the ContainerRotterdam, June 2019
Kal De
CTO, Head of Product Development
prologue What I’ll touch on today
Thoughts for your
consideration
Elements of where we’re at
now
Snapshots of what’s next
Intent
Observational
Declarative
Directional
Shift Towards Cloud-first IT Continues Inexorably
““People don’t want to
buy a quarter-inch
drill. They want a
quarter-inch hole.”Theodore Levitt | Former
Harvard Business School marketing
professor
Text
Text
Text
Text
Click to add title
““People don’t want to
buy a quarter-inch
hole. They want to
hang a picture.”Chip and Dan Heath, authors
Made To Stick.
We do ‘that’. So what?
What are you solving for?
What’s the higher-order bit?
questions
What is Docker?
“.. fastest path to
developer dopamine”
Source:
https://redmonk.com/jgovernor/2016/03/08/rise-of-the-docker-pattern/
5.8M 6.4B
7.5MActive
Desktop Users
(+6% a mth)
1.8M
Docker Hub Images
(+31% a yr)
Image Pulls per Month
(+59% a yr)
Active
Docker Engines
(+83% a yr)
Resulting In
Continued trend towards ubiquity
Docker Enterprise PlatformSecurely build, share and run any application, anywhere
Buildany application
Shareseamlessly
Runanywhere
Application Runtime & Orchestration:
Docker Engine Enterprise
Docker Universal Control Plane
Kubernetes and Swarm
Developer Productivity:
Docker Desktop Enterprise
Secure Registry & Collaboration:
Docker Trusted Registry
Docker Hub
Docker’s Current Product Footprint
Docker
Desktop
Docker
Trusted
Registry
Docker
Hub
Docker
Certified
ContainersSwarm/K8s
Universal Control Plane
Docker
Engines
Docker
Engines
Docker Certified Infrastructure: VMware, AWS, Azure
Docker
Certified
Plugins
● Storage
● Networking
● Logging
● Monitoring
● Security
Docker Enterprise
● Docker Desktop Enterprise (DDE)
● Docker Trusted Registry (DTR)
● Universal Control Plane (UCP)
● Docker Engine – Enterprise (“EE”)
● Docker Certified Infrastructure (DCI)
● Docker Certified Plugins
Docker SaaS
● Docker Desktop - Community (DDC)
● Docker Hub
● Docker Engine - Community (“CE”)
Incubating
● Docker Edge
● Docker Embedded for ISVs
● Docker Enterprise-as-a-Service
Open Source & Experimental Projects
● Docker App
● containerd
● BuildKit, BuildX
● Jump
● Moby
● …
How enterprise buyers stack Docker
Simple is complex
Software is hard
Signal is noise
paradoxes
“We are revolutionising how Allstate delivers technology solutions..
CompoZed is a global network of Agile development labs.
.. We are empowering the disrupter to deliver valuable
products to our customers. CompoZed teams are co located
and follow lean development practices”
https://www.allstate.com/northern-ireland/compozed.aspx
Docker Desktop
• Templates!
• Interoperable with any IDE, programming language, and app framework
• Zero effort install of Docker and Kubernetes
• Auto-generates Dockerfiles, Docker Compose files, and CI pipelines
• Centrally managed and secured
Docker Application
An application packaged as a CNAB generated with docker app
Comprised of:
Set of containers backed by well defined
images
Set of refs to cloud services & cloud-based
functions
Reusable across CI/CD stages
Standard OCI manifests based representation
Shareable to compliant registries
Standard file system representation
Registry to disk (transfer to air gapped env)
Familiar image workflow (push/pull ../sign)
docker app:
CLI plugin; config, install, share application
Generates CNAB from application source
Can install/manage other CNABs
Metadata & parameters
make compose apps usable across multiple envs
CNAB:
Cloud Native Application Bundle
Enable packaging; install; mgmt of container
native apps
$docker app
Build and manage Docker Applications .. simply
Commands:
bundle Create a CNAB invocation image and `bundle.json` for the application
completion Generates completion scripts for the specified shell (bash or zsh)
init Initialize Docker Application definition
inspect Shows metadata, parameters and a summary of the Compose file for a given application
install Install an application
list List the installations and their last known installation result
merge Merge a directory format Docker Application definition into a single file
pull Pull an application package from a registry
push Push an application package to a registry
render Render the Compose file for an Application Package
split Split a single-file Docker Application definition into the directory format
status Get the installation status of an application
uninstall Uninstall an application
upgrade Upgrade an installed application
validate Checks the rendered application is syntactically correct
version Print version information
What’s different(iated)
Consistent with build > share > run thesis ..
Different
Applications centric vs infra centric
Docker Application vs container as core construct
Developer Platform Services enabled
Platform centric vs product centric workflows
Differentiated
Connected experience across platform workflows
Content exchange & collaboration
User (developer, operator) experience
Docker.Next allows developers to build, deploy and operate applications locally or to any cloud. It
gives them complete visibility and control over all of the stages of an application’s lifecycle.
Boring is good
Good takes time
Change is fraught
observations
“In economics, an externality is
the cost or benefit that affects
a party who did not choose to
incur that cost or benefit.”
https://en.wikipedia.org/wiki/Externality
engineering
tenets
Secure by Design
Engineered for Resilience
Built for Elastic Scale
“Why would you want to run containers at the Edge? For the same
reason you would run them in the cloud (or anywhere else).
Dependency management becomes easier. Testing is
easier. The developer experience is easier and better.
Teams can move much faster and more autonomously.
especially when reasonable points of abstraction (such as k8s
namespaces) and resource limits (CPU/RAM) are applied.”
https://medium.com/@cfatechblog/edge-computing-at-chick-fil-a-7d67242675e2
coda Closing considerations
Why to heed technical
practitioners
Why speed is important
Why Docker?
“With the rise of open source, the cloud, and social coding, ‘We’re in
a post-permission era’ .. it’s now quicker than ever to grab code
from a repo, spin up and provision a new cloud instance and start
developing code right there at your laptop.. technical
practitioners, rather than their employers, are becoming
the real technology decision makers. Developers may not
be kings, but they’re increasingly the power behind the throne.”
https://blog.newrelic.com/product-news/futurestack18-james-governor-modern-software/
“Before teams enter the Dojo, their experience was that it would
take 3-6 months to provision hardware and software for the
purposes of development, integration, and testing. After leaving the
Dojo, it would take a few hours.. Today, a team can spin up
an environment in 300 seconds.”
https://dojo.target.com/journey
Looking forward
Where we’re headed directionally on the value chain
From infrastructure to applications centric focus
Content exchange, collaboration hub
Public cloud provider alignment with neutrality
Hybrid cloud first class interoperability
Developer platform services
Flexible (elastic?) consumption models
OSS; innovate!/collaborate on primitives; leverage virtuous cycle
We will deliver a best-in-class experience for high velocity
software development for next generation applications.
The Docker platform will actualize this with a unified
secure lifecycle for modern applications built on a
containerized substrate.
Why Docker?
choicesimplicity