设为首页收藏本站

安徽论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 8583|回复: 0

docker容器启动设置固定IP的实现

[复制链接]

83

主题

0

回帖

261

积分

中级会员

Rank: 3Rank: 3

积分
261
发表于 2022-3-26 10:56:34 | 显示全部楼层 |阅读模式
网站内容均来自网络,本站只提供信息平台,如有侵权请联系删除,谢谢!
docker安装以后的网络类型
  1. [root@insure updev]# docker network ls
  2. NETWORK ID          NAME                DRIVER              SCOPE
  3. 14da40175b01        bridge              bridge              local
  4. 65fb78c28e4f        host                host                local
  5. e0d0c90c1462        none                null                local
复制代码
说明:桥接网络默认情况下启动的Docker容器,都是使用 bridge,Docker安装时创建的桥接网络,每次Docker容器重启时,会按照顺序获取对应的IP地址,这个就导致重启下,Docker的IP地址就变了,无指定网络使用 --network=none ,docker 容器就不会分配局域网的IP
主机网络使用 --network=host,此时,Docker 容器的网络会附属在主机上,两者是互通的。 例如,在容器中运行一个Web服务,监听8080端口,则主机的8080端口就会自动映射到容器中。
创建自定义网络
首先查看自动分配的IP地址
  1. [root@insure updev]# docker inspect -f='{{.Name}} {{.NetworkSettings.IPAddress}} {{.HostConfig.PortBindings}}' $(docker ps -aq)
  2. /awesome_lamarr 172.17.0.4 map[8091/tcp:[{ 8091}]]
  3. /priceless_leavitt 172.17.0.2 map[]
  4. /clever_davinci 172.17.0.3 map[8080/tcp:[{ 8888}]]
复制代码
自定义创建自己的网络地址 只能每次创建16个
  1. [root@insure updev]# docker network create --subnet=172.18.0.0/16 mynetwork
  2. cf556844631a91a2a530fc07146cf03de650214ee50469675e232cd2b9e243b5
  3. [root@insure updev]# ifconfig
  4. br-cf556844631a: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
  5. inet 172.18.0.1 netmask 255.255.0.0 broadcast 172.18.255.255
  6. ether 02:42:90:0c:71:1e txqueuelen 0 (Ethernet)
  7. RX packets 29759 bytes 1736558 (1.6 MiB)
  8. RX errors 0 dropped 0 overruns 0 frame 0
  9. TX packets 29759 bytes 1736558 (1.6 MiB)
  10. TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
复制代码
说明 172.18.0.1 会被系统占用
创建docker容器启动
  1. [root@insure updev]# docker run -itd -p 8091:8091 --name eurekadev --net mynetwork --ip 172.18.0.2 172.16.120.194:5000/claimeureka:latest /bin/bash
  2. a6665cd3fd2e1cb7fca1215a1e75997276b928440e6b888cda4fe3644e0434df
  3. [root@insure updev]# docker ps -a
  4. CONTAINER ID        IMAGE                                    COMMAND                  CREATED             STATUS              PORTS                    NAMES
  5. a6665cd3fd2e        172.16.120.194:5000/claimeureka:latest   "java -jar /app.jar …"   6 seconds ago       Up 5 seconds        0.0.0.0:8091->8091/tcp   eurekadev
  6. [root@insure updev]# docker inspect a6665cd3fd2e | grep IPAddress
  7.   "SecondaryIPAddresses": null,
  8.     "IPAddress": "",
  9.     "IPAddress": "172.18.0.2",
复制代码
说明:通过命令可以看到容器已经成功启动,地址也是我们分配的IP地址
到此这篇关于docker容器启动设置固定IP的实现的文章就介绍到这了,更多相关docker 固定IP内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
                                                        
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
免责声明
1. 本论坛所提供的信息均来自网络,本网站只提供平台服务,所有账号发表的言论与本网站无关。
2. 其他单位或个人在使用、转载或引用本文时,必须事先获得该帖子作者和本人的同意。
3. 本帖部分内容转载自其他媒体,但并不代表本人赞同其观点和对其真实性负责。
4. 如有侵权,请立即联系,本网站将及时删除相关内容。
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表