Workshop: Docker Intensive Course

Location: St James, 4th flr.

Duration: 9:00am - 4:00pm

Day of week: Thursday

Level: Beginner

Key Takeaways

  • First steps with Docker
  • Building and optimizing images
  • Managing lifecycle of containers
  • Networking and service discovery
  • Defining stacks with Docker Compose

Prerequisites

The content is suitable for beginners, but will also introduce and demonstrate many useful concepts for people who already have experience with Docker (for instance, image optimization and multi-stage builds).

No previous knowledge of Docker or containers is required, but you will need some basic UNIX command-line skills. It is recommended that you know how to use a UNIX editor (like vi or emacs).

You won't need to pre-install Docker before the course: each student will be given credentials to connect to an individual virtual machine. So all you need is a computer with a SSH client!

Docker and containers can help developers in many ways: providing clean, isolated development environments; quickly spinning up test instances for CI purposes; ensuring coherence between development and production platform; and much more.

This hands-on workshop will give you an opportunity to dive in, see Docker in action, and learn how to use it for your projects. You will learn about Docker basic concepts, how to run containers, create your own images, write Dockerfiles, optimize build speed and image size, interact with image registries, connect multiple containers together to form complex applications, describe application stacks with Docker Compose, and much more.

What we will cover:

  • First steps with Docker
  • Docker and containers overview
  • The "hello world" of containers
  • Foreground and background containers
  • Containers, images, layers Building images

Building interactively

  • Building with a Dockerfile
  • Understanding the build cache
  • Reducing image size
  • Multi-stage builds
  • Tips, tricks, and best practices

Managing containers

  • Naming containers
  • Inspecting containers
  • Troubleshooting containers

Stacks of containers

  • Container networking basics
  • The Container Network Model
  • Service discovery
  • Local development workflow
  • Leveraging Compose

This workshop is primarily for developers, but also suitable for system administrators or architects who need to understand the underpinnings of container technology in order to leverage Docker in development, CI, or production environments.

Speaker: Jérôme Petazzoni

Staff Container & Infrastructure Engineer @enixsas

Jérôme was part of the team that built, scaled, and operated the dotCloud PAAS, before that company became Docker. He worked seven years at the container startup, where he wore countless hats and ran containers in production before it was cool. He loves to share what he knows, which led him to give hundreds of talks and demos on containers, Docker, and Kubernetes. He trained thousands of people to deploy their apps in confidence on these platforms, and continues to do so as an independent consultant. He values diversity, and strives to be a good ally, or at least a decent social justice sidekick. He also collects musical instruments and can arguably play the theme of Zelda on a dozen of them.

Find Jérôme Petazzoni at

Other Workshops:

Tracks

  • Architectures You've Always Wondered About

    Hard-earned lessons from the names you know on scalability, reliability, security, and performance.

  • Machine Learning: The Latest Innovations

    AI and machine learning is more approachable than ever. Discover how ML, deep learning, and other modern approaches are being used in practice.

  • Kubernetes and Cloud Architectures

    Learn about cloud native architectural approaches from the leading industry experts who have operated Kubernetes and FaaS at scale, and explore the associated modern DevOps practices.

  • Evolving Java

    JVM futures, JIT directions and improvements to the runtimes stack is the theme of this year’s JVM track.

  • Next Generation Microservices: Building Distributed Systems the Right Way

    Microservice-based applications are everywhere, but well-built distributed systems are not so common. Early adopters of microservices share their insights on how to design systems the right way.

  • Chaos and Resilience: Architecting for Success

    Making systems resilient involves people and tech. Learn about strategies being used, from cognitive systems engineering to chaos engineering.

  • The Future of the API: REST, gRPC, GraphQL and More

    The humble web-based API is evolving. This track provides the what, how, and why of future APIs.

  • Streaming Data Architectures

    Today's systems process huge volumes of continuously changing data. Hear how the innovators in this space are designing systems and leveraging modern data stream processing platforms.

  • Modern Compilation Targets

    Learn about the innovation happening in the compilation target space. WebAssembly is only the tip of the iceberg.

  • Modern CS in the Real World

    Head back to academia to solve today's problems in software engineering.

  • Bare Knuckle Performance

    Crushing latency and getting the most out of your hardware.

  • Leading Distributed Teams

    Remote and distributed working are increasing in popularity, but many organisations underestimate the leadership challenges. Learn from those who are doing this effectively.

  • Driving Full Cycle Engineering Teams at Every Level

    "Full cycle developers" is not just another catch phrase; it's about engineers taking ownership and delivering value, and doing so with the support of their entire organisation. Learn more from the pioneers.

  • JavaScript: Pushing the Client Beyond the Browser

    JavaScript is not just the language of the web. Join this track to learn how the innovators are pushing the boundaries of this classic language and ecosystem

  • When Things Go Wrong: GDPR, Ethics, & Politics

    Privacy, confidentiality, safety and security: learning from the frontlines, from both good and bad experiences

  • Growing Unicorns in the EU: Building, Leading and Scaling Financial Tech Start Ups

    Learn how EU FinTech innovators have designed, built, and led both their technologies and organisations.

  • Building High Performing Teams

    There are many discussions outlining the secret sauce of high-performing teams. Learn how to balance the essential ingredients of high performing teams such as trust and delegation, as well as recognising the pitfalls and problems that will ruin any recipe.

  • Scaling Security, from Device to Cloud

    Implementing effective security is vitally important, regardless of where you are deploying software applications