Docker is a system that allows you to create something called a container. A container is like a virtual machine, you can run an app image in it from Docker. An example: you can run GitLab CE through Docker, and it will be like running GitLab CE Through a virtual machine, so it has its own OS Space to do whatever it needs. Docker isn't necessarily bad. Docker is quite useful if you have an app you want to run on a machine, but a different app is using necessary requirements for the app you want to install. Now, that may have sounded confusing to a lot of people, so let us give you an example. Lets say you run CyberPanel (a website control panel system) on one of your machines. CyberPanel would use port 80, 443, 8090, and more. Now lets say you want to run an app on the same machine, but it would interfere with those ports being used on CyberPanel and it needs access to specific directories being used by CyberPanel. To run this app without issues, you could simply run it through a Docker Container with a Docker Image of the app you want to run. You can customize the ports on docker too, so if your app needs port 80, you can have port 80 on the docker container externally forward to a different unused port like 8037. You can access your docker container SSH easily through your Server Shell. Big EMail service company's use a app called Mailcow, which is like GMail, through docker. Company's like eBay, Twitter, and Google also use Docker. For deploying a docker container we recommend using CyberPanel. CyberPanel provides a free docker manager in their control panel (also free, free installation instructions can be found here. There are some downsides to docker though. If you do not update Docker often, you could be exposed to critical security patches involving the ability to easily steal data through a docker container. You need to also make sure the host of the docker container is secure, as the Docker Container shares the same kernel and network as the host of the container, an antivirus is recommended.