位置: 编程技术 - 正文

为Docker设置固定IP及使用Weave管理工具的方法(docker设置固定ip)

编辑:rootadmin
为docker配置固定ip 首先,配置一个用于创建container interface的网桥,可以使用ovs,也可以使用Linux bridge,以Linux bridge为例:复制代码代码如下: br_name=dockerbrctl addbr $br_nameip addr add ...2/ dev $br_nameip addr del ...2/ dev em1ip link set $br_name upbrctl addif $br_name eth0 接着,可以启动容器了,注意用--net=none方式启动:复制代码代码如下: # start new containerhostname='docker.test.com'cid=$(docker run -d -i -h $hostname --net=none -t centos)pid=$(docker inspect -f '{{.State.Pid}}' $cid) 下面,为该容器配置网络namespace,并设置固定ip:复制代码代码如下: # set up netnsmkdir -p /var/run/netnsln -s /proc/$pid/ns/net /var/run/netns/$pid# set up bridgeip link add q$pid type veth peer name r$pidbrctl addif $br_name q$pidip link set q$pid up# set up docker interfacefixed_ip='...3/'gateway='...1'ip link set r$pid netns $pidip netns exec $pid ip link set dev r$pid name eth0ip netns exec $pid ip link set eth0 upip netns exec $pid ip addr add $fixed_ip dev eth0ip netns exec $pid ip route add default via ...1 这样,容器的网络就配置好了,如果容器内部开启了sshd服务,通过...3就可以直接ssh连接到容器,非常方便。上面的步骤比较长,可以借助pipework来为容器设置固定ip(除了设置IP,还封装了配置网关、macvlan、vlan、dhcp等功能):复制代码代码如下: pipework docker0 bee3b ...8/那么,当容器需要删除的时候,怎么清理网络呢,其实也很简单:复制代码代码如下: # stop and delete containerdocker stop $ciddocker rm $cid# delete docker's net namespace (also delete veth pair)ip netns delete $pid使用weave管理docker网络 weave简单使用复制代码代码如下:sudo wget -O /usr/local/bin/weave chmod a+x /usr/local/bin/weave启动weave路由器,这个路由器其实也是在docker中启动的:复制代码代码如下:[root@h-mow ~]# weave launchUnable to find image 'zettio/weave' locally3b3a3db2cfccbdccb3febbbbfa7ebda8af复制代码代码如下:[root@h-mow ~]# brctl showbridge name bridge id STP enabled interfacesdocker0 .afe no vethaweave .7afc2ae no vethwepl复制代码代码如下:[root@h-mow ~]# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES3b3a3db2c zettio/weave:git-aecb "/home/weave/weaver About a minute ago Up About a minute 0.0.0.0:->/tcp, 0.0.0.0:->/udp weave在两台物理机上分别启动一个容器:复制代码代码如下:c1=$(weave run .0.3.3/ -t -i -v /sys/fs/cgroup:/sys/fs/cgroup:ro -v /tmp/$(mktemp -d):/run systemd:systemd /usr/lib/systemd/systemd)c2=$(weave run .0.3.5/ -t -i -v /sys/fs/cgroup:/sys/fs/cgroup:ro -v /tmp/$(mktemp -d):/run systemd:systemd /usr/lib/systemd/systemd)这个时候,两个容器之间是不通的,需要在两台weave的路由器之间建立连接:( if there is a firewall between $HOST1 and $HOST2, you must open port for TCP and UDP)复制代码代码如下:weave connect ..0.9这样,两台容器之间通了:复制代码代码如下:# nsenter --mount --uts --ipc --net --pid --target $(docker inspect --format "{{.State.Pid}}" "$c2")复制代码代码如下:-bash-4.2# ping -c 3 .0.3.3PING .0.3.3 (.0.3.3) () bytes of data. bytes from .0.3.3: icmp_seq=1 ttl= time=2. ms bytes from .0.3.3: icmp_seq=2 ttl= time=1. ms bytes from .0.3.3: icmp_seq=3 ttl= time=1. ms--- .0.3.3 ping statistics ---3 packets transmitted, 3 received, 0% packet loss, time msrtt min/avg/max/mdev = 1./1./2./0. ms weave其他特性 •应用隔离:不同子网容器之间默认隔离的,即便它们位于同一台物理机上也相互不通;不同物理机之间的容器默认也是隔离的 •物理机之间容器互通:weave connect $OTHER_HOST •动态添加网络:对于不是通过weave启动的容器,可以通过weave attach .0.1.1/ $id来添加网络(detach删除网络) •安全性:可以通过weave launch -password wEaVe设置一个密码用于weave peers之间加密通信 •与宿主机网络通信:weave expose .0.1./,这个IP会配在weave网桥上 •查看weave路由状态:weave ps •通过NAT实现外网访问docker容器

推荐整理分享为Docker设置固定IP及使用Weave管理工具的方法(docker设置固定ip),希望有所帮助,仅作参考,欢迎阅读内容。

为Docker设置固定IP及使用Weave管理工具的方法(docker设置固定ip)

文章相关热门搜索词:docker-compose固定容器ip,docker指定dockerfile,docker 设置默认仓库,docker指定仓库,docker设置存储位置,docker怎么设置,docker怎么设置,docker设置存储位置,内容如对您有帮助,希望把文章链接给更多的朋友!

hyper-v虚拟机鼠标不能无法捕捉该怎么办? hyper-v虚拟机建立完成后,链接虚拟机,发现无法捕捉鼠标(不能使用鼠标操作)1、打开虚拟机,直接连接虚拟机2、弹出安装系统时的安装关盘3、弹出

设置VMware启动进入BIOS以及对UEFI的支持 Vmware虚拟机进入BIOS方法在VMware里面如何进入BIOS是个头疼的问题,因为启动界面一闪而过(下面两个图如果不设置bios.bootDelay,基本上很难抓到),即使

使用Device Mapper插件改变Docker容器大小的方法详解 如果在CentOS、REHL、Fedor或者其他默认没有AUFS支持的Linux发行版上使用Docker,你可能需要用到DeviceMapper的存储插件。将这个插件设置为默认,它会把你所

标签: docker设置固定ip

本文链接地址:https://www.jiuchutong.com/biancheng/350547.html 转载请保留说明!

上一篇:Android X86强制竖屏怎么办?安卓(Android)x86屏幕旋转成横屏解决方法(安卓系统强制竖屏)

下一篇:hyper-v虚拟机鼠标不能无法捕捉该怎么办?(hyper v虚拟机)

  • 小规模纳税人每季度超过30万交税
  • 港资企业定义
  • 单位承担的社保费用计入应付职工薪酬科目吗
  • 处置固定资产需要税务局备案吗
  • 小规模未达起征点销售额是多少
  • 原材料进口关税怎么算
  • 支付境外软件服务怎么用
  • 金融企业债券持股比例
  • 进项税超期怎么办
  • 地下车库的成本核算
  • 房地产开发结转成本条件
  • 个人所得税生产经营所得税率表2023
  • 土地租赁费含有多少税率
  • 什么是差额征税,什么情况下适用差额征税
  • 2016年营改增后购买氧气乙炔税率是多少
  • 2019小规模纳税人增值税起征点
  • 资产基金科目如何选择
  • 房产代理公司收客户钱违法
  • 二手车抵押银行贷款
  • 应收利息和应计利息有什么不同
  • 餐厨垃圾处理有哪些设备
  • mac更新系统版本
  • 如何开启windows10云服务
  • 鸿蒙系统怎样开启5G
  • 劳务费费用
  • 个人独资所得税税率表最新
  • 赠送积分有两种形式
  • 贷方发生额是什么意思是利息吗
  • 本期应计提坏账损失700元调整前坏账准备贷方余额500元
  • mozilla是什么文件
  • php配置文件的名字是
  • 企业研发费用的优惠政策
  • php的介绍
  • Joomla调用系统自带编辑器的实现方法
  • 解决脱发的8个方法
  • Nat Biotechnol –精准 CRISPR-Cas噬菌体疗法将为重症感染患者带来福音
  • 手把手教你如何从一无所有到财务自由
  • 当月没有生产情况正常吗
  • redis的eval命令
  • 境外企业在境内提供服务 企业所得税
  • 个人所得税专项附加扣除标准一览表
  • 异地托收承付结算金额起点为
  • python3矩阵求逆
  • VUE3.0+Antdv+Asp.net WebApi开发学生信息管理系统(二)
  • 股东增资涉税
  • 合伙开网吧需要什么手续
  • 增值税附表一填写
  • sql server 2005 sp4
  • 完全删除sql server2012
  • 关于sql的问题
  • 库存商品一直没有销售怎么办
  • 投资损益科目
  • 商业承兑汇票销售产品会计分录
  • 银行扣款后又退回怎么办
  • 公司出售自建厂房
  • 收到质保金怎么写收据
  • 出口免税项目
  • 存储过程失效怎么办
  • win7操作系统在哪儿卖
  • window10总更新是怎么回事
  • assoc.exe=exefile什么意思
  • windows任务管理器怎么用
  • windows七如何连接网络
  • xp默认详细信息
  • win7怎么调音效
  • win8关机一直转圈
  • win10资源管理器快捷键
  • linux whatis与whatis database 使用及查询方法(man使用实例)
  • dos字符串替换
  • 获取文件内容
  • js设计模式书
  • 常用服务器配置
  • nodejs入门教程
  • 究竟什么是幸福
  • jq点击图片让图片进行切换
  • python中中文字符
  • jquery easyui datagrid实现增加,修改,删除方法总结
  • 青霉素过敏是因为提纯不好吗
  • 烟叶税计税依据是收购烟叶实际支付的价款总额
  • 辽宁朝阳丧葬费标准2022
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设