Hello everyone! Welcome to another one of my posts. This time, it will be about docker(and similiar programs such as podman), and why should you, or why shouldn't you use them for your usecase. So, what is docker? Its similiar to virtual machines, but much faster and more lightweight. When you have virtual machines, you are emulating the entire system, which can become really slow, especially when you are emulating different architecture or your cpu doesn't have virtualization support. What docker does different, is not run the entire system, but only run the platform's process, while sharing the system, the kernel, etc.. This also allows docker things like having the files of the container directly somewhere on the host system, instead of having to mount virtual partition, sharing just ports, instead of creating weird network structures, and of couse, the speed. Now, how do we use docker? After installing, we need to first pull a image, like so: `docker pull docker/ubuntu` In this case, we are downloading the ubuntu image from docker hub(kindof like github for git). Then, we want to start the container, which we can do simply by: `docker run -d -it --name example -it docker.io/library/ubuntu:latest /bin/bash` In this case, we are running ubuntu, with the entrypoint being bash, and with the name example, and we are basically starting a new virtual machine(kindof). After that, maybe we want to control the machines terminal! The run command should output a hash we can use when identifying the container, and the exec will look something like: `docker exec -it 4ff344f74a71 /bin/bash` And now, we are in! You might notice that the system you just exec'd into has almost no programs installed, and thats by intention. Its designed to be as lightweight as possible. The next blogpost will proolly be about creating your own docker files(called Dockerfile, haha), and how does image building work. See you next time!