欧美网站建设公司排名,优秀网站建设模板,seo排名软件怎么做,微模板如何建微网站需求#xff1a;希望外部可以直接通过不同IP地址访问宿主机上的Docker容器#xff0c;而不需要端口映射#xff08;同一个IP不同的端口与外部通讯#xff09;#xff0c;这通常涉及到在宿主机的网络层面进行更高级的配置#xff0c;比如使用IP伪装#xff08;IP masquer…需求希望外部可以直接通过不同IP地址访问宿主机上的Docker容器而不需要端口映射同一个IP不同的端口与外部通讯这通常涉及到在宿主机的网络层面进行更高级的配置比如使用IP伪装IP masquerading、设置路由规则或者使用MACVLAN网络等。但在标准的Docker网络配置下直接为每个容器分配公网IP或让外部直接访问容器的私有IP通常是不可行的因为Docker容器的IP地址仅在宿主机的虚拟网络桥接范围内有效。解决办法MACVLAN
学习Macvlan:
Docker 网络模型之 macvlan 详解图解实验完整-腾讯云开发者社区-腾讯云 (tencent.com)
使用MACVLAN网络 一、查询信息
查询宿主机的一个物理网络接口名称比如这里我的是enp1s0。
ip addr show #查看所有网络接口的详细信息
宿主机子网:192.168.0.0/24 网关192.168.0.60 二、创建MACVLAN网络
sudo docker network create \--driver macvlan \--subnet你的宿主机子网如192.168.1.0/24 \--gateway你的宿主机网关 \-o parent物理接口名称如enp1s0 \myMacVlanNet 三、启动容器并分配IP
接下来启动容器时指定这个MACVLAN网络并为容器分配一个在宿主机网络中的静态IP地址
sudo docker run -itd \--name container1 \--networkmyMacVlanNet \--ip为container1分配的IP确保该IP未被其他设备占用如192.168.1.100 \ubuntu