Implementation example of specifying container ip when creating a container in docker

Implementation example of specifying container ip when creating a container in docker

When Docker creates a container, it uses the bridge network by default and allocates the IP address by itself, and does not allow you to specify it yourself.

In actual deployment, we need to specify the container IP and not allow it to allocate the IP by itself. Especially when building a cluster, a fixed IP is necessary.

We can create our own bridge network: mynet. When creating a container, specify the network as mynet and specify the IP.

View Network Mode

docker network ls 

Create a new bridge network

docker network create --driver bridge --subnet=172.18.12.0/16 --gateway=172.18.1.1 mynet

View network information

docker network inspect mynet 

Create a container and specify the container ip

docker run -e TZ="Asia/Shanghai" --privileged -itd -h hadoop01.com --name hadoop01 --network=mynet --ip 172.18.12.1 centos /usr/sbin/init

Running the container

docker exec -it hadoop01 /bin/bash 

CentOS minimal installation does not have ifconfig command, it can be installed through yum

yum install -y net-tools 

Install ssh service

yum install -y openssh-server

yum install -y openssh-clients

systemctl start sshd.service

Add a non-root user

useradd brock

passwd brock 

Access through a local client (by specifying a port or configuring an independent IP when creating a container)

docker run -e TZ="Asia/Shanghai" -p 6001:22 --privileged -itd -h hadoop01.com --name hadoop01 --network=mynet --ip 172.18.12.1 centos /usr/sbin/init

or

route -p add 172.18.12.0 MASK 255.255.255.0 10.0.75.2 

You may also be interested in:
  • Each time Docker starts a container, the IP and hosts specified operations
  • Docker container specifies a fixed IP/static IP address in a custom network segment
  • How to specify container IP for Docker network bridge mode

<<:  About the difference between inspecting elements and viewing the source code of a web page

>>:  Simple implementation of vue drag and drop

Recommend

Several common methods for setting anchor positioning in HTML

There are several ways I know of to set anchor pos...

XHTML 1.0 Reference

Arrange by functionNN : Indicates which earlier ve...

Detailed introduction to nobody user and nologin in Unix/Linux system

What is the nobody user in Unix/Linux systems? 1....

Vue + element dynamic multiple headers and dynamic slots

Table of contents 1. Demand 2. Effect 3. All code...

Solve the problem of resetting the Mysql root user account password

Problem description: The following error message ...

js+Html to realize table editable operation

This article shares the specific code of js+Html ...

Can't connect to local MySQL through socket '/tmp/mysql.sock' solution

Error message: ERROR 2002: Can't connect to l...

Attributes in vue v-for loop object

Table of contents 1. Values ​​within loop objects...

Detailed explanation of three ways to import CSS files

There are three ways to introduce CSS: inline sty...

How to use the Linux md5sum command

01. Command Overview md5sum - Calculate and verif...

Angular Dependency Injection Explained

Table of contents Overview 1. Dependency Injectio...

Summary of Docker common commands and tips

Installation Script Ubuntu / CentOS There seems t...

CentOS7 installation GUI interface and remote connection implementation

Use the browser (webdriver)-based selenium techno...