Introduction to Docker

Overview

Teaching: 10 min
Exercises: 0 min
Questions
  • What is Docker?

Objectives
  • Explain containerisation.

  • Compare Docker with other forms of virtualisation.

  • Understand basic Docker terminology.

This is a basic introduction to the key concepts behind Docker and some of the terminology used.

What is containerisation?

Two things:

What is Docker?

Docker is a platform for building and running applications in isolated containers. It is often used to support reproducible build and deployment of applications, but can also be used in an interactively for testing or exploring new software.

It’s also the name of the company behind the technology.

How does Docker compare with virtual machines

Most virtualisation platform (e.g. VirtualBox, VMWare, OpenStack) replicate all the hardware of a typical computer in software, allowing you to run most operating systems.

In contrast Docker is a form of lightweight virtualisation

A bit like individual OMERO.servers for each user vs one server with each user in their own private group.

Images and containers

Typically a Docker image will only run one application (e.g. Nginx web server), in contrast to a virtual machine which may have external SSH access, cron jobs to perform regular clean-up tasks, and multiple user accounts, amongst other things.

Key Points

  • Docker is …

  • Images …

  • Containers …