Docker official website: http://www.docker.com
Docker Chinese website: https://www.docker-cn.com
Docker Hub (warehouse) official website: https://hub.docker.com
Note:
Jetson Orin NX and Jetson Orin Nano use Docker images, while Jetson Nano motherboard does not use Docker images.
It is recommended to use MobaXterm remote tool to connect to the main control
For the installation and use of MobaXterm, please refer to the following link or search Baidu.
xxxxxxxxxx
https://www.jb51.net/program/285577y15.htm
Docker is an application container engine project, developed based on the go language, and is open source.
First, let me mention a few scenarios:
In fact, these problems are related to the environment.
To avoid various problems caused by different environments, it is best to deploy the project together with the various environments required by the project.
For example, the project involves redis, mysql, jdk, es and other environments. When deploying the jar package, bring the entire environment. Then the question is, how can the project bring the environment together?
Docker is here to solve this problem!
This is the Docker logo, a whale full of containers. On the whale's back, the containers are isolated from each other. This is the core idea of Docker. For example, if multiple applications were running on the same server before, there might be conflicts in the port usage of the software. Now they can run independently after isolation. In addition, Docker can maximize the use of the server's capabilities.
Docker uses a client-server architecture. The Docker client communicates with the Docker daemon, which is responsible for building, running, and distributing Docker containers. The Docker client and daemon can run on the same system, or you can connect the Docker client to a remote Docker daemon. The Docker client and daemon communicate using the REST API over a UNIX socket or a network interface. Another Docker client is Docker Compose, which allows you to handle applications consisting of a set of containers.
Image:
xxxxxxxxxx
A docker image is a read-only template. An image can be used to create a docker container, and one image can create many containers. Just like classes and objects in Java, classes are images, and containers are objects.
Container:
xxxxxxxxxx
Docker uses containers to run one or a group of applications independently. A container is a running instance created using an image. It can be started, started, stopped, and deleted. Each container is isolated from each other to ensure a secure platform. You can think of a container as a simplified version of a Linux environment (including root user permissions, process space, user space, and network space, etc.) and the applications running in it. The definition of a container is almost exactly the same as an image, and it is also a unified perspective of a stack of layers. The only difference is that the top layer of the container is readable and writable.
Repository:
xxxxxxxxxx
A repository is a place where image files are stored centrally. Repositories are divided into public and private.
The largest public repository is docker hub (https://hub.docker.com/), which stores a large number of images for users to download. Domestic public repositories include Alibaba Cloud and NetEase Cloud.
It is necessary to correctly understand the concepts of storage/image/container:
Docker pull execution process:
Docker run execution process:
xxxxxxxxxx
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
xxxxxxxxxx
sudo docker version
xxxxxxxxxx
sudo docker run hello-world
The following output indicates that Docker is successfully installed