Introduction to Docker

Docker is one of the tools that has completely changed the way we deploy applications and distribute them.

This is also a highly demanding and highly valued technology, loved by the vast majority of its users, and has high skills in your courses.

Using Docker, we can create a container that wraps the entire application.

Not only that: it can wrap the entire application, and it can be saved to an image for easy copying.

Copy is the key term here. Using Docker, we can create an isolated environment that can run on your computer, client computer, server, anywhere, and will use the specific version of the software we want it to run.

This helps to solve the entire problem caused by configuration errors and version mismatches between different environments.

Docker is complicated, but I think it handles many complex topics in a relatively user-friendly way.

This is why "get it" can eliminate a lot of complexity in your life as a developer, software developer, and software user.

No more "but it can run on my machine". You don’t need to say any more, and you don’t need to be told anymore.

We all know that debugging is difficult, and when something works in all the environments you are testing and does not work in some strange configuration, debugging becomes very difficult. There are just too many moving parts.

Docker is also great for distributing the software you create, but you don't want to deal with countless support requests from people trying to install it on all possible web servers and settings.

I know that the popular forum application Discourse relies heavily on Docker. I can't find a reference right now, but I'm pretty sure I've read that they only support problems that occur when installing official Docker images. I may be wrong here, but the idea does not sound crazy: if you, as a programmer, can create images that can be deployed anywhere and deploy docker containers, then as a user, you should definitely take advantage of it.

Another major benefit of Docker is the ability to run multiple applications that run different versions of the same stack. Without a similar solution, this would be difficult, or at least confusing.

In the following tutorials, we will introduce several Docker concepts and discuss how to use them:

And more!

More docker tutorials: