How Docker performs port mapping
As a containerization technology, Docker can help us package the application and all the resources it requires into a mirror, making it easier to deploy and manage. Port mapping is a very important function in Docker. Our application can be exposed to the network on the host. This article will introduce how Docker performs port mapping.
1. The concept of port mapping
The application in the Docker container needs to be bound to a port number to listen in order to process network requests in the host, and port mapping is to The port number in the container is mapped to a port number in the host, so that the external network can access the application in the container. The port mapping can be divided into two modes, one is random mode and the other is specified. model.
2. Random mode
In random mode, Docker will automatically select an unoccupied port number on the host and map it to the specified port inside the container. We only need to docker run Port mapping can be performed by adding the -p parameter to the command. The specific command is as follows:
$ docker run -p [宿主机端口]:[容器内部端口] image_name
Among them, the host port can be a random port number. At this time, we can use the command docker ps to view the mapped port number. .
$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES c1abd02665a3 nginx "nginx -g 'daemon of…" 3 hours ago Up 3 hours 0.0.0.0:32768->80/tcp nginx
As you can see, port number 32768 is the host port number randomly mapped by Docker.
3. Specified mode
In specified mode, we can specify a port number on the host to map to the port number inside the container. This is more suitable for deployment in a production environment. , we can specify different port numbers for each container for mapping, so that port numbers can be easily managed and maintained. The specific commands are as follows:
$ docker run -p [宿主机端口]:[容器内部端口] image_name
Among them, the host port can be specified as any available port Number, such as 80, 443, etc.
4. Specification of the internal port of the container
When performing port mapping, we need to specify the port number inside the container. If not specified, Docker will use the port number monitored by the application inside the container. The default port number is mapped. For example, port 80 corresponds to the HTTP service. If we want to map port 80 to port 8080 of the host, we can use the following command to perform port mapping:
$ docker run -p 8080:80 image_name
In this way, we You can use port 8080 in the host to access the HTTP service inside the container.
5. Summary
Port mapping is a very important function in Docker, which can help us expose the applications in the container to the host network, so that it can be easily accessed and Management, we can perform port mapping through random mode or specified mode, and we need to pay attention to the specification of the internal port of the container, so that the port mapping can be configured more flexibly.
The above is the detailed content of How Docker performs port mapping. For more information, please follow other related articles on the PHP Chinese website!

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

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

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)

How to restart the Docker container: get the container ID (docker ps); stop the container (docker stop <container_id>); start the container (docker start <container_id>); verify that the restart is successful (docker ps). Other methods: Docker Compose (docker-compose restart) or Docker API (see Docker documentation).

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.

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).

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

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".

DockerVolumes ensures that data remains safe when containers are restarted, deleted, or migrated. 1. Create Volume: dockervolumecreatemydata. 2. Run the container and mount Volume: dockerrun-it-vmydata:/app/dataubuntubash. 3. Advanced usage includes data sharing and backup.

The steps to update a Docker image are as follows: Pull the latest image tag New image Delete the old image for a specific tag (optional) Restart the container (if needed)
