Containerization - Docker, Podman
Remote and stationary training options
View the training programme
- What will you gain from the training?
Training objectives and skills
In this training, we will dive into containerization, helping participants get hands-on with it, from practical skills to running and handling applications. Docker will be in the spotlight, but we'll also check out other cool options like Podman.
Skills
Upon course completion, participants will possess the following competencies:
- Understanding the concept of containerization, grasping its essence, problem-solving nature, and differentiation from virtual machines.
- Application of Docker as a containerization tool and awareness of alternatives like Podman.
- Familiarity with Docker's configuration elements (such as storage and logging drivers).
- Proficiency in creating and managing images, comprehending the structure of a Dockerfile, and adopting best practices for image creation.
- Knowledge of "Multi-stage builds" and their significance.
- Utilization of Docker Registry.
- Competence in using volumes.
- Understanding of Docker-related networking issues.
- Proficient management of running containers, monitoring their real-time status.
- Ability to utilize Docker-Compose for launching multiple containers.
- Is this training for you?
Audience profile
The training is intended for programmers, system engineers, and architects who want to build, run and manage containerized applications.
RequirementsBasic command-line navigation skills are required. In case you bring your own laptop, please ensure that ssh client is installed.
During the training, we will be creating/editing files on the server. Editors such as 'nano' and 'vim' will be available for editing purposes. Additionally, participants will have the option to mount a directory with tasks locally via ssh (e.g., VSCode offers suitable extensions for this purpose) and use their favorite editor from their local machine.
- Duration
Duration:
- 2 days, 16 hours
- Detailed training program
Detailed training program
Introduction
- Containerization - an overview
- Docker, Podman
Getting Started
- Familiarization with syntax
- Running a container
Images
- Introduction
- Creating and managing
- "Multi-stage builds"
Docker Registry
Volumes
- Introduction
- "Bind mounts" and "Volume mounts"
- Creating and managing volumes
Networking
- Introduction to networking in Docker
- Creating and managing networks
Docker-Compose
- Launching multiple interconnected containers using a single configuration file
Podman
- Architecture
- Similarities and differences compared to Docker
- Networks, volumes
- Buildah, Skopeo
Training delivery method
It is recommended to use containers in your daily work. Lift your existing work/personal apps into container images and run the required backing services for local development.The next logical step is to explore the orchestration of multiple containers and dive into the Kubernetes world.
