Docker Essentials: A Developer Introduction
Learn how to use containers for your applications. Create and run your first Docker container. Then, learn how to run containers in production and solve problems of orchestration such as high availability, service discovery, and reconciliation.
4.6 (4k+ Reviews)

Language
- English
Topic
- Containers
Enrollment Count
- 102.01K
Skills You Will Learn
- Containers, Docker
Offered By
- IBMDeveloperSkillsNetwork
Estimated Effort
- 3 hours
Platform
- SkillsNetwork
Last Update
- May 9, 2025
About this course
Docker is a development tool and a virtualization technology used to automate the deployment of applications inside software containers. A container on the other hand is a standard way to package an application that contains all the configuration files, and other dependencies to operate the application. Containers work by isolating the application inside the container so that everything outside the container can be standardized.
- What are containers?
- 1. Run a container
- 2. Run multiple containers
- 3. Remove the containers
Lab 2: Add CI/CD value with Docker images
- Docker images
- 1. Create a Python app (without using Docker)
- 2. Create and build the Docker image
- 3. Run the Docker image
- 4. Push to a central registry
- 5. Deploy a change
- 6. Understand image layers
- 7. Remove containers
Lab 3. Orchestrate applications with Docker Swarm
- Container orchestration overview
- 1. Create your first swarm
- 2. Deploy your first service
- 3. Scale your service
- 4. Apply rolling updates
- 5. Reconcile problems with containers
- 6. Determine how many nodes you need
- Final exam

Language
- English
Topic
- Containers
Enrollment Count
- 102.01K
Skills You Will Learn
- Containers, Docker
Offered By
- IBMDeveloperSkillsNetwork
Estimated Effort
- 3 hours
Platform
- SkillsNetwork
Last Update
- May 9, 2025
Instructors
John Zaccone
Solution Architect and Enabler at IBM
I am an engineer with 10+ years of experience in software development, architecture design, Dev(Sec)Ops, and agile process. My expertise is in helping clients migrate to modern application architecture and teaching their technical audience (developers, operations, architects, and security SMEs) the broad ecosystem of technology used in this new architecture. I'm heavy in the container ecosystem space and spend a lot of time automating applications deployed to Kubernetes such as with GitOps. I also have a strong Linux and systems background and have ease in setting up complicated environment infrastructures satisfying requirements for security, latency, cost, and automation.
Read moreContributors
Rohit Arora
Full-Stack Software Engineer
A lifelong learner who develops cool technology. Join me to gain knowledge about the breadth of software development 😎.
Read more