docker进入容器并执行命令 docker从容器中怎么访问宿主机?
docker从容器中怎么访问宿主机?
docker构建LNMP环境后,如果您需要访问安装在主机上的数据库或中间件,则不能直接使用IP 127.0.0.1,它指向容器中的容器本身。如何访问主机例如,如果docker环境的虚拟IP是192.168.99.100,那么主机也将承载一个与192.168.99.100网段相同的虚拟IP,主机IP将是192.168.99.1。在容器中很容易访问192.168.99.1,这相当于访问主机。请注意,通过192.168.99.1访问主机相当于更改IP如果库或中间件限制本地访问或IP段,请记住将192.168.99.1添加到白名单中
docker和主机之间的交互是通过本机网络实现的。docker进程启动时,它将在主机上配置一个名为docker 0的虚拟网桥。此接口允许docker将虚拟子网分配给即将启动的容器。此网桥将充当容器中网络与主机网络之间接口的主节点。docker容器启动后,将创建一个新的虚拟接口,并在网桥子网中分配一个IP地址。此IP地址嵌入到容器网络中,用于提供从容器网络到docker 0网桥的通道。Docker自动配置iptables规则来释放和配置NAT。在主机上连接docker 0后,可以访问主机的MySQL数据文件。
docker从容器中怎么访问宿主机?
有两种常见方案;
方案1:
如果主机执行ifconfig,它将看到docker 0的IP,可用于访问主机。
方案2:[批准]主机.docker.internal
将
127.0.0.1添加到主机文件主机.docker.internal
docker进入容器并执行命令 docker基本命令 docker容器和主机通讯
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。