Learn to deploy your applications in Containers.
What you will learn
Setup Docker Desktop
Create account on Docker hub
Run a Docker container
Create a Docker image
Run a Docker image
Publish a Docker image to Docker hub
Pull a Docker image
Docker is an open-source project that automates the development, deployment and running of applications inside isolated containers. Containers allow developers to bundle up an application with all of the parts it needs, such as libraries and other dependencies, and ship it as one package.
Docker is both a daemon (a process running in the background) and a client command. It’s like a virtual machine but it’s different in important ways. First, there’s less duplication. With each extra VM you run, you duplicate the virtualization of CPU and memory and quickly run out resources when running locally. Docker is great at setting up a local development environment because it easily adds the running process without duplicating the virtualized resource. Second, it’s more modular. Docker makes it easy to run multiple versions or instances of the same program without configuration headaches and port collisions.
There are several reasons to use Docker. I’ll focus here on three: consistency, speed and isolation. By consistency, I mean that Docker provides a consistent environment for your application from development all the way through production — you run from the same starting point every time. By speed, I mean you can rapidly run a new process on a server. Because the image is preconfigured and installed with the process you want to run, it takes the challenge of running a process out of the equation. By isolation, I mean that by default each Docker container that’s running is isolated from the network, the file system and other running processes.