That technology is containerization, in this case: Docker. If this technology is unknown to you, I invite you to read further.
What is Docker?
In short, it allows you to isolate software in the so-called container. Instead of giving someone an application with a few-page instructions on how to configure it, what to connect with and how to run, simply pack the whole thing into a container. The recipient is happy, you nails a high five and you go to celebrate.
No more mess
I do not know if only I have it, but I have the impression that the more software I have on my computer, the less efficiently it works. For example, Microsoft SQL Server installation creates a lot of confusion, requires many packages etc. You probably do not need 95% of these things at the Hello World stage.
Fortunately, thanks to the containerization, a few magic spells are enough to avoid all this. Let’s assume we need the above-mentioned mssql. In the Docker Hub we find the container we are looking for. Then download:
docker pull microsoft/mssql-server-linux
and run according to instructions:
docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=yourStrong(!)Password' -e 'MSSQL_PID=Express' -p 1433:1433 -d microsoft/mssql-server-linux:latest
Now let’s check if we can actually connect to our database. I will just use visual studio, but it can also be SSMS.
Everything is in its place.
Remember that the port is given in this case after the comma. The container which was created is stateless. If you want to keep data after turning off the container and switching it on again, you must use a spell that uses volume. But about this spell another time.