Home >Operation and Maintenance >Docker >How to bind docker ip

How to bind docker ip

王林
王林Original
2023-05-13 14:36:091140browse

With the popularity and use of Docker, more and more developers and enterprises are beginning to use Docker to build and manage their applications. When using Docker, a key concept is the IP address of the Docker container. By default, Docker containers use randomly assigned IP addresses, but sometimes we need to specify a specific IP address for the Docker container. In this article, we will explain how to bind a static IP address to a Docker container.

  1. Create a new network

First, we need to create a new network so that we can assign a static IP address to the Docker container. We can create a new network using the following command:

docker network create --driver bridge --subnet=172.18.0.0/16 my_network

Here, the --driver bridge option indicates using Docker’s default network driver, and the --subnet option Used to specify the IP address range of the network, my_network is the name of the new network. In this case, we will use CIDR notation to specify the IP address range.

  1. Run the Docker container and assign a static IP address

Next, we can run the Docker container and connect it to the newly created network. We can run an Nginx container and connect it to the my_network network using the following command:

docker run --name my_nginx --network my_network --ip 172.18.0.2 -d nginx

Here, the --name option is used to specify the name of the container , --network option is used to specify the name of the network, --ip option is used to specify the static IP address of the container, nginx is the name of the image to be run . In this case, we specified the container’s IP address as 172.18.0.2, which is an available IP address within the new network range. We also run the Nginx container as a background process using the -d option.

  1. Accessing the container

Now, we can access the Nginx container through the container’s static IP address. We can access the default page of Nginx using the following command:

curl http://172.18.0.2

Here, we use the static IP address of the container to access the default page of the Nginx container. If everything is fine, you should be able to see Nginx's welcome page.

  1. Using Docker Compose

If you use Docker Compose to manage multiple containers, you can also specify a static IP address for each container. In the Docker Compose file, you can specify the static IP address of the container using the following code:

version: '3'
services:
  nginx:
    image: nginx
    networks:
      my_network:
        ipv4_address: 172.18.0.2

networks:
  my_network:
    driver: bridge
    ipam:
      config:
        - subnet: 172.18.0.0/16

Here, we specify a static IP address for the Nginx container using the ipv4_address option. We also defined a network called my_network that uses the default Docker network driver and specified the network segment and IP address using the ipam option. Managing multiple containers and multiple networks is easier with Docker Compose.

Summary

In this article, we introduced how to assign a static IP address to a Docker container. By assigning a static IP address to a container, we can more precisely control the container's network connectivity and access. Whether using basic Docker commands or using Docker Compose, you can specify a static IP address for your container.

The above is the detailed content of How to bind docker ip. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn