Skip to content

Docker Knowledge Path

Vojtech Mašek edited this page Aug 19, 2019 · 2 revisions

Introduction to Containers

  • Prerequisites: none
  • Description: This skill includes basic knowledge of containers – what they are, what they are used for and why, what are the differences between containers and virtual machines.
  • Principal: -
  • Curriculum:
  • Test: -

Docker – Basics

  • Prerequisites: none
  • Description: This skill includes basic knowledge of Docker which is the most popular type of the container system with its own ecosystem. The individual learns the concept of Docker container and Docker image, how to run a container with different options, how to manage containers and images in the system.
  • Reference:
  • Principal: -
  • Curriculum:
    • Learn the difference between image and container
    • Learn how to run container (docker run) with different options
    • Learn how to manage containers (docker ps, docker start, docker stop, …)
    • Learn how to manage images (docker images, docker pull, docker push, …)
    • Learn how to manage networks and run containers in the same network or link them together
    • Learn how to manage volumes
    • Learn how to clean up docker (docker system prune)
  • Test: The individual should be able to run MySQL database and WordPress engine in the two distinct containers, link them so WordPress can connect to the MySQL database. MySQL database should persist its data to the host volume.

Docker – Image Building

  • Prerequisites: none

  • Description: The individual learns how to create custom Docker images.

  • Reference:

  • Principal: -

  • Curriculum:

    • Learn what is Dockerfile, its syntax, how to invoke build (docker build)
    • Learn the most important directives of Dockerfiles (FROM, WORKDIR, ADD, COPY, RUN, ENTRYPOINT, COMMAND)
    • Best practices (Minimal images, Security, Two-stage builds)
  • Test: Build minimal Docker Image with Go application. Running this image without additional options passed to docker run will start given Go application.

Docker Compose

  • Prerequisites: none
  • Description: This skill includes knowledge of how to leverage tool Docker Compose to run multi-container applications. Docker-compose simplifies this setup while supporting many of the Docker features.
  • Principal: -
  • Curriculum:
  • Test: -
Clone this wiki locally