Docker can be said to be a terminal command line virtual machine, but more accurately, it should actually be a virtual environment.
(Recommended tutorial: docker tutorial)
For example, do you want to use Linux seamlessly on your PC? Then virtual machines are not your only way out, you also have Docker! I prefer to call Docker a container. Of course, this is just a narrow interpretation of Docker. Docker is more than a container.
Docker contains 3 important concepts, which are:
1. Image (Image)
The image is static and can be shared by users. document.
Those of us who have played with dual systems and virtual machines all know that first you need an .iso image to install the system. The same is true for images in Docker. The image is static and you cannot operate it. You can only pull other people's images or push your own images.
2. Container
The image is static and inoperable and can only be shared and downloaded. So what can be operated?
is the container. Containers can be understood as the dynamic state of the image, which is the state of the system in our virtual machine after it is installed. In fact, it is wrong to say this. The most suitable description of the container should be the Live CD mode of the Linux iso file.
For example, when we played dual systems, we all entered Live CD mode, directly entering the system without installing the system. Docker containers are exactly the same concept, but they are lighter, faster and more convenient. But the disadvantage of Live CD is that all the modified and installed software you make after shutting down will be lost. The same is true for containers. Once they are directly launched, all previously installed gcc, vim, etc. will be lost.
If you want to save the changes, you need to encapsulate the current container into a new image, so that the previous changes will still be there after the new image is started next time.
3. Repository
I don’t know if you are familiar with git. The repository in Docker is very similar to the git code repository. You can pull it before pushing it. The image of your own warehouse can be moved locally, or you can pull the image pushed by others to the public warehouse to your local area. To put it bluntly, it is just like Baidu Cloud Disk. You can upload (push) the Docker environment you have created yourself, or you can download (pull) it. Mirror your own cloud to local.
At the same time, we know that the biggest feature of Baidu Cloud is sharing. Similar to Docker, if you get the Baidu Cloud sharing link (other people’s image name, label and other people’s user name), you can also download (pull) others Share the image locally and others can download (pull) your image because Docker repositories are public.
Of course, each free user has a quota to set one of his own images as private, which means that it is prohibited from being shared with others.
The above is the detailed content of How to understand docer?. For more information, please follow other related articles on the PHP Chinese website!

Docker is a Linux container technology-based tool used to package, distribute and run applications to improve application portability and scalability. 1) Dockerbuild and dockerrun commands can be used to build and run Docker containers. 2) DockerCompose is used to define and run multi-container Docker applications to simplify microservice management. 3) Using multi-stage construction can optimize the image size and improve the application startup speed. 4) Viewing container logs is an effective way to debug container problems.

Docker container startup steps: Pull the container image: Run "docker pull [mirror name]". Create a container: Use "docker create [options] [mirror name] [commands and parameters]". Start the container: Execute "docker start [Container name or ID]". Check container status: Verify that the container is running with "docker ps".

The methods to view Docker logs include: using the docker logs command, for example: docker logs CONTAINER_NAME Use the docker exec command to run /bin/sh and view the log file, for example: docker exec -it CONTAINER_NAME /bin/sh ; cat /var/log/CONTAINER_NAME.log Use the docker-compose logs command of Docker Compose, for example: docker-compose -f docker-com

You can query the Docker container name by following the steps: List all containers (docker ps). Filter the container list (using the grep command). Gets the container name (located in the "NAMES" column).

Create a container in Docker: 1. Pull the image: docker pull [mirror name] 2. Create a container: docker run [Options] [mirror name] [Command] 3. Start the container: docker start [Container name]

Four ways to exit Docker container: Use Ctrl D in the container terminal Enter exit command in the container terminal Use docker stop <container_name> Command Use docker kill <container_name> command in the host terminal (force exit)

Methods for copying files to external hosts in Docker: Use the docker cp command: Execute docker cp [Options] <Container Path> <Host Path>. Using data volumes: Create a directory on the host, and use the -v parameter to mount the directory into the container when creating the container to achieve bidirectional file synchronization.

The process of starting MySQL in Docker consists of the following steps: Pull the MySQL image to create and start the container, set the root user password, and map the port verification connection Create the database and the user grants all permissions to the database


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

SublimeText3 Chinese version
Chinese version, very easy to use

ZendStudio 13.5.1 Mac
Powerful PHP integrated development environment

Zend Studio 13.0.1
Powerful PHP integrated development environment

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

Atom editor mac version download
The most popular open source editor