在Linux中用docker启动一个没有网卡的容器,手动添加网卡至容器并改名为eth0,另一端添加至docker0并命名为shidunyv
时间: 2023-05-11 20:03:23 浏览: 94
可以通过以下命令在Linux中使用docker启动一个没有网卡的容器,并手动添加网卡至容器并改名为eth0,另一端添加至docker0并命名为shidunyv:
1. 首先,使用以下命令启动一个没有网卡的容器:
docker run --rm -it --cap-add=NET_ADMIN --cap-add=NET_RAW --device /dev/net/tun --name mycontainer ubuntu:latest /bin/bash
2. 然后,在容器中使用以下命令添加网卡并改名为eth0:
ip link add eth0 type veth peer name shidunyv
ip link set eth0 up
ip addr add 192.168.0.2/24 dev eth0
3. 最后,在宿主机中使用以下命令将另一端添加至docker0并命名为shidunyv:
ip link set shidunyv netns $(docker inspect --format '{{.State.Pid}}' mycontainer)
ip netns exec $(docker inspect --format '{{.State.Pid}}' mycontainer) ip link set shidunyv up
ip netns exec $(docker inspect --format '{{.State.Pid}}' mycontainer) ip addr add 192.168.0.1/24 dev shidunyv
这样,你就成功地在Linux中使用docker启动一个没有网卡的容器,并手动添加网卡至容器并改名为eth0,另一端添加至docker0并命名为shidunyv。
阅读全文