Docker is an open-source containerization platform used to build, deploy, and manage containers on Linux, Windows, or Mac. Containerization is the evolution of VMs and is used by a wide range of companies big and small all the way down to individuals. You can learn more about Docker from the links below:
We use docker for almost everything. We run tests and dev with docker on Windows and Linux, and our production environments use docker on Linux. We have tools that run in docker that are not meant to stay online, and websites that must stay on 24/7. We run game servers, cryptocurrency miners, Linux desktops in a container, and all kinds of other things. Docker has a large community of developers and tons of ready-made images. After working with docker for a while you can take open source projects around the web that don't use docker and figure out how to make it run! If it will run on Linux chances are it can run in a container!
There is a lot to know about docker and we are still learning as the environment changes. The most important things to know about docker are basic commands and how to navigate in a terminal, Docker-Compose which will be used for all the services we support, and Docker Swarm which allows you to run an array of docker machines that use managers and workers to run containers. Managers require quorum which put simply means a certain number of machines must be available for things to keep running correctly. As you introduce Docker Swarm and add more computers this will become an important bit of knowledge. To learn about Maintaining a Docker Swarm follow this link. The graph will show you the configuration of managers you should have for the desired swarm size and what that swarm sizes fault tolerance is.
Docker can be installed on Windows or Mac using Docker Desktop. Docker can be installed on Linux using Docker Desktop or Docker Engine. To install docker follow the links below::
We strongly suggest running the docker engine on a Linux headless server for production environments.
If you are installing docker desktop on windows you will be asked at some point to install WSL 2 on windows, run this command in a terminal once you reach this step: wsl.exe --set-default-version 2
After you install docker try opening up a terminal and run docker run hello-world
Play around for a bit, start figuring things out, and start breaking things. This is the best way to learn. Don't do anything data-sensitive like moving all your photos to Nextcloud and then deleting them from everything else until you know where your data is going, how easy it is to erase it all, have backups of some sort, ups power solutions, and a good idea of networking and how to configure it to your needs. We have a wide range of services here that you are on the way to being able to use. Next, take a look at installing Portainer.
If you are using a raspberry pi on ubuntu 21.10 you may need to add this dependency apt install linux-modules-extra-raspi
This can be very VERY many things that cause this… Sometimes the error message does not help at all… try this:
This has solved several issues for us and is something to keep in mind anytime you deploy a compose.