Published Sep 3, 2019

Episode 217: James Turnbull on Docker

James Turnbull delves into the transformative power of Docker, detailing its orchestration tools, cross-platform capabilities, and efficiency in managing complex distributed applications. The discussion spans Docker's impact on modern software practices, including concepts like immutable infrastructure and service-oriented architectures, providing insights for both Linux and non-Linux systems.
Episode Highlights
Software Engineering Radio - the podcast for professional software developers logo

Popular Clips

Episode Highlights

  • Orchestration

    Docker's orchestration tools are rapidly evolving, addressing the complexities of managing applications across multiple hosts. highlights the significance of orchestration in Docker's ecosystem, noting that tools like Fig allow users to define and manage collections of containers, linking them together in a sequence 1. This orchestration capability is crucial for running services that depend on multiple components, such as databases and web services, across various geographies 1. He also points out that powerful orchestration tools have traditionally been inaccessible due to high costs or the need for advanced engineering skills, but Docker aims to change that 2.

    The real exciting part of the next wave of Docker will be building those sort of orchestration and management tools.

    ---

    adds that these tools are designed to run containers on multiple hosts, expanding Docker's capabilities beyond single-host applications 3.

       

    Docker Hub

    Docker Hub serves as a central platform for sharing and managing Docker images, akin to GitHub for source code. explains that Docker Hub allows developers to push and pull images, facilitating a seamless workflow for teams to work with consistent development environments 4. This capability is crucial in preventing configuration drift and ensuring that all team members are using the same image version 4. Additionally, Docker Hub offers private repositories, providing a secure option for companies to manage proprietary information 4.

    Docker Hub is very much like GitHub except it's for Docker images.

    ---

    Turnbull also discusses Docker's business model, which includes monetizing Docker Hub through paid private repositories and additional services 5.

       

    Immutable Infra

    The concept of immutable infrastructure with Docker offers a new approach to managing applications, contrasting with traditional tools like Chef and Puppet. describes immutable infrastructure as a system where applications are stateless and containers are recreated rather than updated, reducing configuration drift 6. This approach is particularly beneficial in environments requiring high performance and consistency, such as scientific computing and web operations 6. Turnbull also draws an analogy between Docker containers and intermodal shipping containers, emphasizing the efficiency and standardization they bring to application deployment 7.

    Instead of using Papadochev to rebuild a container back to a known good state, you just might use them to kill the container and restart a new one.

    ---

    This method complements existing infrastructure management tools by focusing on the provisioning and management of Docker hosts 7.

Related Episodes