Dockers, Knockers, Tik Tokers, What Is It?

A high level overview of Docker

Anne Hyacinthe
The Marcy Lab School
2 min readJul 27, 2020

--

The best way I know how to understand new technologies is by knowing the 5Ws and the H, so that is what I’m going to do here.

Who is Docker for?

Docker is for any developer or developer team.

What does it do?

Docker is a tool that makes it easy to create, deploy, run, and destroy applications. It does this all by utilizing containers. Containers are essentially runtime environments with each having all of the dependencies, libraries and etc. for the application to run.

Where will you use a Docker?

You can use them any and everywhere and there are benefits for giving each application component (such as the front-end, database, server, etc.) its own container. One of the benefits being that the separation of components allows application components to avoid conflicting dependencies. For example, if there were to be different versions of ESLint in your front-end and backend, that would cause an error but if they were in separate containers they would be read and created as separate entities.

But how do we put these containers together to form one application? Great question, you can use Docker Compose to run multi-container applications.

When will you use Docker?

Docker can once again be used any and everywhere because containers can serve any purpose the developer desires. So a developer can very well have one container for development, one for production and another for testing.

Why do you want to use Docker?

There are a plethora of reasons to use Docker such as the ones that I’ve listed like the ability to avoid dependency conflicts and quickly alter the application. But my two favorites are that due to all Docker containers needing to run on the Docker Engine all containers can be read and run in all environments (such as linux and windows). So, it resolves the common issue of “my code runs on my system but not yours.” The second is that Docker can be used as version control because it does allow you to commit, push and go to prior images.

How does Docker create a container?

Docker containers are an instance of Docker images and Docker images are assembled by a list of commands that are in a Dockerfile. An image is a read-only immutable template of all the instructions it takes to build the container. An image becomes a container by a writable layer being added to it by running docker create. When it is a container, you can alter the image by taking a screenshot of the container state and adding that as a new layer to the image by running docker build making it the new template model.

--

--