Docker is a set of platform as a service (PaaS) products that use OS-level virtualization to deliver software in packages called containers.The service has both free and premium tiers. The software that hosts the containers is called Docker Engine. It was first released in 2013 and is developed by Docker, Inc. (Wikipedia)
You can read more about Docker and why to use it from https://www.knowledgehut.com/blog/devops/why-use-docker.
A container is a standard unit of software that packages up code and all its dependencies so the application runs quickly and reliably from one computing environment to another.
A Docker container image is a lightweight, standalone, executable package of software that includes everything needed to run an application: code, runtime, system tools, system libraries and settings.
In order to use Docker, you will need Docker Engine or Docker Desktop. Docker Desktop is a graphical tool which makes it easy to start and stop Containers.
You can download the installation files of Docker Desktop from https://docs.docker.com/engine/install/.
In Windows you will need to install also WSL in order to run Docker Desktop. You can find the instructions for installing WSL (wsl2) from https://learn.microsoft.com/en-us/windows/wsl/install.
Docker can build images automatically by reading the instructions from a Dockerfile. A Dockerfile is a text document that contains all the commands a user could call on the command line to assemble an image. You can read more about Dockerfile from https://docs.docker.com/engine/reference/builder/
The purpose of the .dockerignore file is to specify which files and directories should be excluded from the Docker context when building an image. It serves a similar function to the .gitignore file used in version control systems like Git.
Here are the main reasons for using .dockerignore:
Compose is a tool for defining and running multi-container Docker applications. With Compose, you use a YAML file to configure your application's services. Then, with a single command, you create and start all the services from your configuration. You can read more about it from https://docs.docker.com/compose/
Here are the commands that you will need
You can make allmost everything you need with Docker Desktop. But you can also use command line. Here are some of the commands, you might found usefull.
Kubernetes is an open source orchestration system for automating the management, placement, scaling and routing of containers that has become popular with developers and IT operations teams in recent years.
You can read more about Kubernetes from https://www.docker.com/products/kubernetes/