(可选)创建IPVLAN网络
IPVLAN是一种Linux网络设备驱动,它提供了一种轻量级的方式来创建多个逻辑网络接口,这些接口共享同一个物理网络接口。与传统的MACVLAN不同,IPVLAN不为每个虚拟接口分配独立的MAC地址,而是让所有子接口共享物理接口的MAC地址。这种方式有助于减少在大型部署中的MAC地址冲突问题,并且由于减少了交换机上的MAC表项,也能降低对交换机资源的消耗。
常用命令
- 查看Docker版本。
1
docker --version
- 加载镜像。
1
docker load -i openEuler-docker.aarch64.tar.xz
- 查看加载的镜像。
1
docker images
- 显示正在运行的Docker容器。
1
docker ps
- 显示所有Docker容器,包括已经停止的容器。
1
docker ps -a
- 停止容器。
1
docker stop <容器id>
- 删除容器。
1
docker rm (-f) <容器id>
- 查看容器网络。
1
docker network ls
创建Docker IPVLAN网络
- 查看内核加载的模块中是否包含IPVLAN模块。
1
lsmod | grep ipvlan
若没有回显信息,加载IPVLAN内核模块。1
sudo modprobe ipvlan
- 环境重启后若Docker服务未启动,需重启Docker服务,否则跳过该步骤。
1
sudo systemctl restart docker
- 创建Docker IPVLAN网络,每次环境重启需要重新配置Docker IPVLAN网络,配置命令参考如下。
1 2 3 4 5 6
docker network create -d ipvlan \ --subnet=192.168.220.0/24 \ --ip-range=192.168.220.128/25 \ --gateway=192.168.220.1 \ -o ipvlan_mode=l2 \ -o parent=bond4 ipvlan_network
以下参数请按实际情况进行修改:
subnet和gateway改为环境网段,根据机器网段配置,与配置网卡IP的网段保持一致。
ip-range是Docker分配给容器的IP范围。如上述举例所示,表示Docker容器的起始IP地址从220.128开始。如果本行删除,则表示Docker容器的起始IP地址默认从220.2开始。
ipvlan_mode设为l2,
网络名称是ipvlan_network。
报错处理:plugin "ipvlan" not found
问题现象描述
执行创建Docker IPVLAN网络命令后报错Error response from daemon: plugin "ipvlan" not found。
结论、解决方案及效果
- 打开文件daemon.json。
1
vi /etc/docker/daemon.json
- 修改字段(如果文件内已有内容,将以下字段添加至顶部)。
{ "experimental": true }
- 重启Docker服务。
1
sudo systemctl restart docker
父主题: 搭建环境和组网