How Docker works: structure and functioning

In recent years, Docker has earned an important place in the daily lives of developers. Let’s go take an overview of this tool and find out how Docker works behind the scenes.

Features of Docker

One of the most important features Docker offers is instant startup time. A Docker container can be started in a fraction of the minimum time. This is a very fast action that is incomparable with the minutes it takes to start a virtual machine.

Docker uses the features of the Linux kernel for booting and interacting with containers. Due to this dependence on the Linux kernel, when Docker is run on other systems, such as MacOs, an additional layer of virtualisation is started, which is normally “masked” by Docker for Mac (as a user, you will not notice the difference, except in terms of speed). (more…)

How to use Docker Compose

Docker Compose is one of the most useful tools for developers and sysadmins. In fact, most IT jobs require knowledge of Docker and Docker Compose. Knowing how to use these technologies will undoubtedly be an advantage in continuing your career.

What is Docker compose?

In a nutshell, Docker Compose is a tool that allows you to manage multiple Docker containers. Do you remember micro-services, i.e. the concept of dividing a web application into different services? Well, these services run in individual containers that must be managed and must be configured to communicate with each other. Docker compose allows you to do just that. (more…)

How to create a container with Docker

Let’s continue with our guides dedicated to Docker. Today we’ll take a detailed look at a topic that is really fundamental for anyone involved in web development: Docker containers.

A container is the running instance of an application in an isolated environment that is dynamically allocated resources to run. Inside it, the container has the application to run and everything it needs: runtime, libraries, configuration, etc.

What is the difference between an image and a container?

A docker image is a static package containing all the resources necessary to run an application. (more…)

How to create an optimal Docker environment

In order to develop software, it is necessary to have a local environment with all the available services needed to run the application being developed correctly.

For example, if you are developing a web application with Symfony, you will need to have a webserver such as Apache or Nginx, a PHP interpreter and probably a database on which to save data, such as Postgre or MySql. (more…)

How to create a package using Docker

When we talk about packages, we generally refer to scalable aggregated blocks of software or libraries. In fact, a package can be used by multiple applications by importing or extending the package itself.

Docker is a tool that will make your life as a developer easier. We are talking about an open-source project that can automate the deployment of applications inside software containers; in essence, a platform that will enable you to create, test and distribute applications via containers. (more…)

How to deploy with Docker

Docker is a platform that provides a virtualisation system on which you can run programs in packages called containers.

Containers are isolated from each other and comprise all required software resources, including the operating system, thus enabling the application to run.

Deploy Docker: Deploy an application with Docker using Docker Image

To deploy an application with Docker, you must first have an image available. (more…)

How to install Docker: a mini practical guide

Installing Docker on your machine to create a development environment is really a very simple operation. Let’s see how to install it on Windows, Mac and Ubuntu.

How to install Docker: Windows, Mac and Ubuntu

In this mini-guide, we shall see how to install Docker on Windows, Mac and Ubuntu. (more…)