欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

docker 创建容器时指定容器ip的实现示例

程序员文章站 2022-06-10 12:31:12
docker创建容器时默认采用bridge网络,自行分配ip,不允许自己指定。在实际部署中,我们需要指定容器ip,不允许其自行分配ip,尤其是搭建集群时,固定ip是必须的。我们可以创建自己的bridg...

docker创建容器时默认采用bridge网络,自行分配ip,不允许自己指定。

在实际部署中,我们需要指定容器ip,不允许其自行分配ip,尤其是搭建集群时,固定ip是必须的。

我们可以创建自己的bridge网络 : mynet,创建容器的时候指定网络为mynet并指定ip即可。

查看网络模式

docker network ls

docker 创建容器时指定容器ip的实现示例

创建一个新的bridge网络

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

查看网络信息

docker network inspect mynet

docker 创建容器时指定容器ip的实现示例

创建容器并指定容器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

运行容器

docker exec -it hadoop01 /bin/bash

docker 创建容器时指定容器ip的实现示例

centos最小化安装没有ifconfig命令,可通过yum进行安装

yum install -y net-tools

docker 创建容器时指定容器ip的实现示例

安装ssh服务

yum install -y openssh-server

yum install -y openssh-clients

systemctl start sshd.service

新增非root用户

useradd brock

passwd brock

docker 创建容器时指定容器ip的实现示例

通过本地客户端访问(通过创建容器时指定端口或配置独立ip)

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

route -p add 172.18.12.0 mask 255.255.255.0 10.0.75.2

docker 创建容器时指定容器ip的实现示例