Build Systems that Drive Business
30–31 Oct 2018: Training
31 Oct–2 Nov 2018: Tutorials & Conference
London, UK

Docker tools and workflows: From app development to production clusters (Day 2)

Bret Fisher (DevOps Consultant)
Location: Thames Suite (Richmond/Chelsea)

Who is this presentation for?

You are a Developer, DevOps and CI/CD engineer, or Ops Sysadmin

Prerequisite knowledge

  • Understand terminal or command prompt basics.
  • Linux basics like shells, SSH, and package managers. (tips included to help newcomers!)
  • Understand the basics of web and database servers. (how they typically communicate, IP's, ports, etc.)
  • Create a Docker ID beforehand at https://hub.docker.com.

What you'll learn

  • How to use Docker and Compose on your machine for better software building and testing.
  • Skills to build development environments with your code running in containers.
  • Hands-on with best practices for making Dockerfiles and Compose files like a Pro!
  • Build and publish your own custom images.
  • Build a fancy multi-node Swarm cluster for production deployments!
  • Update and change your Swarm Services without downtime using rolling updates.
  • Experience using multi-host logging and event monitoring for Docker Swarm.

Description

In this interactive training, Docker Captain Bret Fisher teaches you how to create containers, images, networks, and more using Docker Compose, the developer’s best friend. Practice your DevOps and troubleshooting skills with a full day spent deploying multi-tier apps on server clusters with Swarm and other popular tools. This content will cover over 50% of what’s needed for the Docker DCA certification.

Day 1: Docker 101 for Development


  • Why Docker?

  • Proper Docker Setup

  • Your First Containers

  • Official Images

  • Building Images Interactively

  • Building Images with Dockerfiles

  • CMD and ENTRYPOINT

  • COPY and multi-stage builds

  • Publishing to Docker Hub
  • Docker Networking

    • Network drivers and basics
    • Naming and inspecting
    • Service discovery with DNS
    • Legacy links

    Docker Compose

    • Local development workflow
    • Creating dev stacks
    • Advanced Dockerfiles
    • Using volumes locally

    Day 2: Deploying Multi-tier Apps with Compose and Swarm

    • Local development workflow
    • Our app: Dockercoins
    • Compose scale up and down
    • SwarmKit and Swarm Mode

    Swarm Basics

    • Creating a Swarm
    • Adding Nodes and Services
    • Host our own image registry

    Swarm Operations

    • Overlay networks
    • Updating Services
    • Rolling Updates
    • Healthchecks
    • Netshoot and IPSec

    Swarm Security

    • Swarm Secrets
    • Raft and Swarm recovery
    • API’s and encryption at rest

    Swarm 3rd party tools

    • ELK for centralized logging
    • Prometheus for centralized monitoring
    • Stateful service and volumes
    Photo of Bret Fisher

    Bret Fisher

    DevOps Consultant

    Bret Fisher is a Virginia Beach-based freelance DevOps and Docker consultant, trainer, speaker, and open source volunteer. Bret has been a cloud and data center ops and system administrator for 20 years. Currently, he helps teams Dockerize their apps and systems and improve their speed of deployment, resiliency, metrics, and awareness (all that DevOps-y stuff). Bret is a Docker Captain and Code for America Brigade Captain. He runs several monthly meetups, speaks at conferences, and is obsessed with containerizing any app he sees. (He’ll likely talk your ear off about it next time you meet.) Bret also develops in Node.js, Bash, and general web, usually for open source projects. In his free time, he does CrossFit, surfs a little, geeks out in the awesome local dev community in Virginia Beach, and travels with his wife. He writes at Bretfisher.com and tweets at @bretfisher.