Docker containers have become the most common part of the process of packaging up and deploying applications. Large-scale technology giants such as Amazon, Google and Microsoft rely on them so developers need to understand how to use containerize.
A Docker container is a lightweight, standalone, executable package of software that includes everything needed to run an application: code, runtime, system tools, system libraries and settings. Docker streamlines the development lifecycle by allowing developers to work in standardized environments using local containers which provide your applications and services. Containers are great for continuous integration and continuous delivery (CI/CD) workflows.
In this course, Noureddin introduces Docker and containerization technology, why it is useful, and what the clear benefits are. He covers how to install Docker, how to run containers successfully, and how to professionally containerize applications with Dockerfile. This course offers a glimpse into real-world applications to show how the containerization and deployment process works.
What You Will Learn:
Developers and Engineers will learn how to:
- Understand how and why Docker is essential to software development and deployment.
- Learn the difference between containers and VMs and why containers are the preferred option.
- Professionally dockerize your applications and add features to them.
- Run docker containers smoothly and seamlessly.
- Maximize usage and minimize errors by avoiding the dependency hell problem via docker containers.
Who Should Take This Course:
- Software developers and engineers
- DevOps engineers and security specialists
- Machine Learning Engineers
- Technical and software project managers
Table of Contents
Introduction to Docker and Containers Introduction
Lesson 1 Background on Docker and Containers
Learn what Docker is and what Containers are
Review the Dependency Problem before and after Docker
Compare Containers with Virtual Machines
Find out why Containerization has become popular
Use Docker for microservices and reproducibility
Lesson 2 Docker Installation
Learn the Docker Architecture
Perform Docker Installation on MacOS
Docker Installation on Windows
Docker Installation on Linux
Lesson 3 Docker Containers
Run your first Docker Containers
Run your Docker Containers in the background
Learn Docker Container networking
Create a Docker-Hub account
Lesson 4 Docker Containers Versus Images
Understand the difference between Docker Containers and images
Search for Docker images on Docker-Hub
Learn the difference between Docker-Hub’s root namespace and user namespace
Learn about self-hosted namespace
Lesson 5 How to Dockerize Applications (Create Your Own Docker Images)
Develop an understanding of how to create Docker images
Create a Docker image interactively
Learn the structure of a Dockerfile
Create a Dockerfile to automatically create a Docker image
Lesson 6 Learn Docker Volumes and More on Dockerfile
Learn and use Essential Dockerfile instructions
Learn and use Docker Volumes for permanent data storage
Learn more useful Docker commands and Dockerfile instructions
Lesson 7 Create Real-World Docker Applications
Dockerize a Python Machine Learning Application
Dockerize an R Application
Learn Windows Containers
Lesson 8 Run Multi-Container Apps with Docker-Compose
Overview of Docker-Compose and Docker Networking
Develop an Understanding of Docker-Compose’s YAML Configuration
Learn how to create a Service
Learn how to Work with Environment Variables, Scaling and Replicas
Create a Real-World Example with Docker-Compose
Introduction to Docker and Containers Summary