Introduction to Docker and Docker Compose

This course provides an introduction to containerization using Docker and Docker Compose. You will learn how to create Docker images, how to run Docker containers, and how to use Docker volumes and networks effectively. You will also learn how to use Docker Compose to automate these tasks via reusable configuration files.

Course objectives

  • Understand Docker images and containers
  • Create volumes in Docker
  • Manage Docker networks
  • Use Docker Compose to build images and run containers
  • Use Docker Compose to manage configuration, volumes, and networks
  • Docker best practices

Prerequisites

This course is aimed at developers or DevOps engineers that need to learn how to use Docker to create and manage containerized applications

Andy Olsen - author of the course

Andy is a freelance consultant and instructor based in the UK, working mostly in the City of London and Oxford. Andy has been working with .NET since the Beta 1 days and has extensive experience in many facets of .NET development including WCF, WPF, WF, ASP.NET MVC Web development, and mobile applications. Andy has designed and written many Microsoft Official Curriculum courses in the last decade, and has been engaged as author and technical reviewer with Apress on some of their biggest selling books.

 

Day 1

Introduction to Docker

  • Introduction to containerization and Docker
  • Getting started with Docker

Docker Images and Containers

  • What is an image
  • Pulling images from a Docker registry
  • Managing images locally
  • Running containers
  • Interacting with containers

Creating Docker Images

  • Creating a simple Docker image
  • The layered filesystem of Docker images
  • A closer look at Dockerfile instructions
  • Parameterizing Docker containers
  • Multi-stage builds

Docker Persistence

  • The need for persistence
  • Persisting data within a container
  • Persisting data in a volume
  • Using the VOLUME instruction in a Dockerfile
  • Additional persistence techniques

Docker Networking

  • Using default networking in Docker
  • Creating a user-defined network
  • Additional types of network

Day 2

Introduction to Docker Compose

  • Getting started with Docker Compose
  • Specifying dependencies between services
  • Defining health checks
  • Defining a restart policy for services

Environment Variables

  • Setting the scene
  • Defining environment variables with Docker
  • Defining environment variables with Docker Compose

Configurations and Secrets

  • Defining configs
  • Defining secrets

Managing Volumes and Networks

  • Defining and using volumes via Docker Compose
  • Additional volume techniques
  • Defining and using networks via Docker Compose
  • Additional network techniques

Working with Multiple Compose Files

  • Setting the scene
  • Including Compose files
  • Extending a Compose file
  • Merging Compose files

 

1. Hva lærer jeg på dette kurset?
Du får en praktisk og tydelig innføring i hvordan du bruker Docker i hverdagen. Du lærer å:

  • Forstå Docker-arkitekturen, images og containere
  • Lage egne Docker-images
  • Kjøre og administrere containere
  • Bruke Docker-volumes for lagring
  • Administrere Docker-nettverk
  • Automatisere oppsett med Docker Compose
  • Følge beste praksiser for container-arbeid

2. Hvem passer kurset for?
Kurset er laget for:

  • Utviklere som vil bygge og distribuere applikasjoner med containere
  • DevOps-ingeniører som vil standardisere miljøer og deployment
  • Teknikere som jobber med cloud- eller mikrotjenestearkitektur
  • Team som skal gå fra tradisjonelle VM-miljøer til container-basert drift

3. Trenger jeg forkunnskaper?
Ja, du bør ha grunnleggende erfaring med programvareutvikling eller drift. Ingen Docker-erfaring kreves fra før.

4. Hva er hovedtemaene i kurset?

Docker fundamentals
Images, containere, registry, CLI-bruk.

Arbeid med images og containere
Lage images, kjøre containers, feilsøke og optimalisere.

Volumes og nettverk
Persistens, deling av data og konfigurering av container-nettverk.

Docker Compose
Automatisere oppsett for flere containere og håndtere miljøer.

Docker best practices
Filstruktur, lagdeling, sikkerhet, ressursbruk, organisering.

5. Er kurset praktisk?
Ja! Du jobber gjennom konkrete oppgaver der du:

  • Lager images
  • Starter containere
  • Konfigurerer nettverk
  • Setter opp multi-container miljøer med Docker Compose
  • Tester og feilsøker løpende

6. Hvilke verktøy brukes?
Du bruker:

  • Docker CLI
  • Docker Desktop (Windows/macOS)
  • Docker Compose
  • Et IDE som Visual Studio Code (anbefalt)

7. Får jeg kursbevis?
Ja, alle deltakere får kursbevis etter fullført kurs.

8. Hva kan jeg bruke dette til i jobben min?
Du kan:

  • Lage standardiserte utviklingsmiljøer
  • Forenkle deling og deploy av applikasjoner
  • Sikre lik oppførsel på tvers av maskiner, team og miljøer
  • Ta første steg inn i DevOps, cloud-arbeid og mikrotjenester

Other relevant courses

26. March
2 days
Classroom
2 days
Classroom