首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >[Docker]手动配置docker网络

[Docker]手动配置docker网络

作者头像
贰叁壹小窝
发布2020-07-22 02:03:38
发布2020-07-22 02:03:38
97100
代码可运行
举报
文章被收录于专栏:贰叁壹运维贰叁壹运维
运行总次数:0
代码可运行

本文编写于 205 天前,最后修改于 153 天前,其中某些信息可能已经过时。

1.环境:Centos7 2.运行一个容器

代码语言:javascript
代码运行次数:0
运行
复制
[root@idc ~]# docker run -it --rm --name=mynetwork --net=none centos:latest /bin/bash
#--net=none:docker不对容器进行网络配置,无网络配置
#--rm:容器停止后会清空容器,对容器的设置都将被清除
#容器运行后,再克隆一个会话进行下面的步骤

3.创建容器的网络命名空间

代码语言:javascript
代码运行次数:0
运行
复制
[root@idc ~]# PID=$(docker inspect -f '{{.State.Pid}}' mynetwork)
[root@idc ~]# mkdir -p /var/run/netns
[root@idc ~]# ln -s /proc/$PID/ns/net /var/run/netns/$PID

4.创建一对veth pair接口A和B,绑定A接口到网桥br0并启动它

代码语言:javascript
代码运行次数:0
运行
复制
[root@idc ~]# ip link add A type veth peer name B
[root@idc ~]# brctl addif br0 A
[root@idc ~]# ip link set A up
#如果brctl命令报错,则进行yum安装
#yum install bridge-utils

5.将接口B放到容器的网络命名空间,命名为eth0,并配置ip地址和网关,再启动

代码语言:javascript
代码运行次数:0
运行
复制
[root@idc ~]# ip link set B netns $PID
[root@idc ~]# ip netns exec $PID ip link set dev B name eth0
[root@idc ~]# ip netns exec $PID ip link set eth0 up
[root@idc ~]# ip netns exec $PID ip addr add 172.17.42.100/24 dev eth0
[root@idc ~]# ip netns exec $PID ip route add default via 172.17.42.1

6.到容器中查看ip

代码语言:javascript
代码运行次数:0
运行
复制
[root@3508b096cd89 /]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default 
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
   valid_lft forever preferred_lft forever
inet6 ::1/128 scope host 
   valid_lft forever preferred_lft forever
128: eth0@if129: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default 
qlen 1000
link/ether 76:29:d9:1f:fd:c1 brd ff:ff:ff:ff:ff:ff link-netnsid 0
inet 172.17.42.100/24 scope global eth0
   valid_lft forever preferred_lft forever
inet6 fe80::7429:d9ff:fe1f:fdc1/64 scope link 
   valid_lft forever preferred_lft forever
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-12-29 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档