Skip to content

Latest commit

 

History

History
82 lines (49 loc) · 1.99 KB

README.md

File metadata and controls

82 lines (49 loc) · 1.99 KB

(docker-workshop) Docker workshop

A docker masterclass to give developers a more hands on experience with using docker from scratch.


Docker Masterclass - Part 1: Docker Basics (~ 4hrs)

  • Introduction: Hello my name is "Danvir" not "Docker" (~ 30 mins) (Presentation)
    • Agenda for workshop
    • What is docker?
    • History
    • Comparison against virtual environments
    • Architecture
    • Different versions of docker
    • Docker Basics

### 01 - Docker Basics: Command line like a Docker Captain - Exercises (~ 30 mins)

Exercises

------------- BREAK ------------- (~ 15 mins)

02 - Dockerizing an Application

Dockerfile Basics (~ 15 mins) (Presentation)

Exercises

- Dockerfile is just a convention
- The Docker Hub
- Understanding build contexts / working directories
- Difference between COPY and ADD
- Difference between shell-form and exec-form  CMD RUN
- Copying files and directories

#### Lab 02a: Create Application (~ 30 mins)

#### Lab 02b: Dockerizing application - Dockerfile (~ 20 mins)

------------- BREAK ------------- (~ 15 mins)

03 - Improving your Docker

Dockerfile Best Practices (~ 10 mins) (Presentation)

Lab 03a: Improving your Docker Application (~ 30 mins)

- Adding *meta-data
- Understand the build process
- Choosing and specifying a base image
- .dockerignore file
- Build args and env variables
- How to optimise reusing of layers
- Order matters

Lab 03b: Multi-stage builds (~ 30 mins)

04 - Basic Docker Review

20 mins (Presentation)

  • Summarise what we learnt today
  • Dockerfile best practices
  • New (Experimental) Dockerfile features (Buildkit - context mounts, app caches)

Docker Masterclass - Part 2: Advanced Docker Concepts (2 hrs) TBC

  • Docker Networking
  • Connecting multiple docker services
  • Permissions
  • Debugging methodologies