Last week, the Docker team headed to Austin for OSCON for a week packed full of containers and open source!
The official conference agenda featured many Docker talks including a keynote session (complete with live open sourcing of the core technology that powers the Docker for Mac and Windows desktop applications!) from Solomon Hykes, two packed workshops with Jérôme Petazzoni and a full day of sessions on containers with talks from Rackspace, IBM, Datadog, Avant, Couchbase and of course Docker. The local Docker Austin meetup group hosted an evening event on Tuesday with talks on Docker Security Scanning and Docker and unikernels. The Docker team also staffed a booth in the expo hall to answer questions from OSCON attendees.
Below are the slides from most of the Docker talks – we’ll keep adding new ones as they get posted!
Incremental revolution: What Docker learned from the open source fire hose with Solomon Hykes, founder, CTO and Chief Product Officer at Docker, Inc.
Sign up for the Docker for Mac and Windows Beta
An integrated, easy-to-deploy environment for building, assembling, and shipping applications.
Workshops at OSCON:
slides available here: container.training
Docker is an open platform to build, ship, and run any Linux application anywhere. AJ Bowen and Jérôme Petazzoni lead a hands-on tutorial that gives you an opportunity to dive in and see Docker in action. You’ll learn about Docker basic concepts and how to run containers, create your own images, interact with the Docker Hub, and stack multiple containers to compose complex applications.
This tutorial is relevant for both developers and sysadmins. If you’ve heard about Docker but haven’t used it (or used it very little), AJ and Jérôme will get you started in this fast-paced, hands-on introduction.
Deployment and orchestration at scale with Docker Swarm with AJ Bowen and Jérôme Petazzoni, Tinkerer Extra
slides available here: container.training
You’ve installed Docker, you know how to run containers, you’ve written Dockerfiles to build container images for your applications (or parts of your applications), and you’re using Compose to describe your application stack. Your app is running beautifully on your local Docker Engine, but how do you take it to production? How do you go from a single-node setup to a scalable, highly available deployment? How do you address production-related requirements like logging, backups, remote access, and security upgrades?
Jérôme Petazzoni and AJ Bowen answer those questions using tools from the Docker ecosystem as they demonstrate building an app from development to production with Docker. Jérôme and AJ run a sample app on a single node with Compose and add scaling and load balancing. They then provision a Swarm cluster with Docker Machine and implement multihost communication with overlay networking. The result will be a highly available, scalable deployment for the application. The whole workshop will use real-world demo applications with web frontends, web services, background workers, and stateful data stores in order to cover a wide range of use cases.
Understanding Docker Security and Performance with Ben Hall, founder of Ocelot Uproar
tutorial available here: github.com/katacoda/oscon2016-docker-perf-sec
Docker offers a great deal of advantages, simplifying both development and production environments. But there is still uncertainty around the security and performance of containers. Drawing on his experience building Katacoda—a platform that provides users with a sandboxed and personalized learning playground (with the side effect that they can execute malicious code and hack the system from inside the container)—Ben Hall investigates the security and performance of containers. You’ll leave with an understanding of Docker’s security and performance models, their limitations, and how to handle them.
Topics include: Out-of-the-box security with Docker, Docker security issues, Docker and Linux vulnerabilities, High-performance applications, and Scaling containers
Sessions at Open Container Day
Intro to Docker Swarm with Everett Toews, Developer Advocate at Rackspace
Everett Toews offers an introduction to Docker Swarm and explains what it takes to develop and deploy an application on it.
Innovating out in the open with Docker Captain Phil Estes, Senior Technical Staff Member, IBM’s Open Cloud Technologies
It’s almost been a year since the Open Container Initiative (OCI) and its reference OCI-compliant runtime for containers, runC, were announced last June. RunC is now the container execution engine used both by Docker and Cloud Foundry’s Garden-Linux project. Phil Estes explains why runC and the OCI community are great places to innovate and develop new features for container execution.
Advanced Docker developer workflows on Mac OS and Windows with Anil Madhavapeddy, Engineer at Docker, Inc. and Richard Mortier, University Lecturer at University of Cambridge
Most developers use a Mac or Windows host to develop Docker Linux containers. This normally requires the installation of a Linux virtual machine as well as a complicated setup that includes a local networked filesystem for sharing data between the host and the Linux container, including UID mapping and case sensitivity, with inotify often being unreliable into the container; replicating Linux networking configuration locally to reflect the structure of the deployed microservices on the local laptop; and maintaining a separate Linux virtual machine and hypervisor such as VirtualBox, leading to heavyweight resource usage on a developer laptop.
Anil Madhavapeddy and Richard Mortier outline various methods to make using Docker on a Mac OS or Windows laptop as transparent as possible to the developer, including build scenarios from the conventional (Compose-based web stacks) to the deep end of systems (unikernel compilation) to the multi-CPU architecture (cross-compiling ARM containers on a normal Mac or Windows host).
Containers as a service with Docker with Patrick Chanezon, Technical Staff Member at Docker, Inc.
Docker revolutionized how developers and operations teams build, ship, and run applications, enabling them to leverage the latest advancements in software development: the microservice architecture style, the immutable infrastructure deployment style, and the DevOps cultural model.
Patrick Chanezon offers a detailed overview of the four layers of the Docker ecosystem enabling CaaS: standards (OCI, CNCF), infrastructure (runC, containerd, Notary), platform (Docker, Swarm), and services (Docker Cloud, Docker Datacenter). Patrick ends with a demo showing how to provision a highly available Swarm cluster using Docker Datacenter on a cloud provider and leverage the latest Docker tools to build, ship, and run a polyglot application architected as a set of microservices—including how to setup load balancing.
Conference Sessions at OSCON:
Unikernels and Docker: From revolution to evolution with Anil Madhavapeddy, Engineer at Docker, Inc. and Richard Mortier, University Lecturer at University of Cambridge
Unikernels are a growing technology that augment existing virtual machine and container deployments with compact, single-purpose appliances. Two main flavors exist: clean-slate unikernels, which are often language specific, such as MirageOS (OCaml) and HaLVM (Haskell), and more evolutionary unikernels that leverage existing OS technology recreated in library form, notably Rump Kernel used to build Rumprun unikernels.
Better collaboration through tooling with Ying Li and David Lawrence, Engineers at Docker, Inc.
Ying Li and David Lawrence investigate how to use free tools to ease collaboration and improve outcomes in open source Go projects. By providing a better way for your contributors to get up and running and giving them more visibility into their impact, positive or negative, you can increase their independence and the velocity of your project.
Ying and David discuss three key topics: Introduction to a project, Submitting a pull request, Distributing updates.
System software goes weird with Justin Cormack, Developer at Docker, Inc.
For decades, system software has been on its own path, diverging from the wider software practice in many respects: C has been the exclusive language; operating systems are monolithic among the largest software projects; occasional releases, rather than continuous delivery, is the norm; and testing is often relatively limited given the sizes of the projects.
But recently a diverse set of open source projects have taken standard programming practice and applied it to systems problems, producing software that looks very different. Justin Cormack explores a selection of these systems, in areas such as networking, security, and operating systems, and outlines what we can learn from them, how they are useful, whether they are useful, how much fun they are, and whether worse is better.
From the Docker Austin Meetup:
Docker Security Scanning with Ben Grissinger
Learn More about Docker
- New to Docker? Try our 10 min online tutorial
- Share images, automate builds, and more with a free Docker Hub account
- Read the Docker 1.11 Release Notes
- Subscribe to Docker Weekly
- Sign up for upcoming Docker Online Meetups
- Attend upcoming Docker Meetups
- Register for DockerCon 2016
- Watch DockerCon EU 2015 videos
- Start contributing to Docker