docker宿主机容器互相访问,简述Docker容器与主机的关系

docker从容器中怎么访问宿主机

Host模式:Host 模式并没有为容器创建一个隔离的网络环境。该模式下的Docker 容器会和Host宿主机共享同一个网络namespace, Docker Container可以和宿主机一样,使用宿主机的eth0,实现和外界的通信。

客户机获取DHCP服务器主要分为4个步骤:IP租用请求: DHCP客户机初始化TCP/IP,通过UDP端口67向网络中发送一个DHCPDISCOVER广播包,请求租用IP地址。

Docker在安装成功后,会在宿主机创建一个docker0网卡,这个网卡就是负责容器与宿主机之间通信的桥梁。通过Docker创建一个容器之后,会在宿主机再创建一个网卡,也就是上面的 veth3543ea3@if7 ,容器内也会创建一个网卡。

有两个方法:1)如果宿主机为Linux系统,则修改iptables防火墙来指定端口映射规则;2)如果是非Linux系统,可以将已装Ambari的容器commit为新的镜像,再基于该镜像创建新的容器。

Docker容器跨主机通信之:直接路由方式

1、在docker宿主机上运行ifconfig命令可以看的存在一个docker0的网桥。

2、这里介绍的容器间的通信方式就是docker中最常见的bridge模式,当然此外还有host模式、container模式、none模式等,对其它模式有兴趣的可以去阅读相关资料。

3、Host模式:Host 模式并没有为容器创建一个隔离的网络环境。该模式下的Docker 容器会和Host宿主机共享同一个网络namespace, Docker Container可以和宿主机一样,使用宿主机的eth0,实现和外界的通信。

4、把机房里的电脑都连接在交换机上,类比成docker 容器作为一台设备都连接着宿主机上的docker0。 把交换机和机房中的机器的ip在同一个网段,类比成docker0、和你启动的docker容器的ip也同属于172网段。

5、Docker在安装成功后,会在宿主机创建一个docker0网卡,这个网卡就是负责容器与宿主机之间通信的桥梁。通过Docker创建一个容器之后,会在宿主机再创建一个网卡,也就是上面的 veth3543ea3@if7 ,容器内也会创建一个网卡。

6、使用端口映射 :直接把容器的服务端口映射到主机上,主机直接通过映射出来的端口通信。把容器放到主机所在的网段 :修改 docker 的 ip 分配网段和主机一致,还要修改主机的网络结构。

如何使用数据卷在宿主机和docker容器之间共享文件

1、共享宿主机的目录给容器 docker run -i -t -v ~/download:/home/hello python3-env /bin/bash -v 表示创建一个数据卷并挂载到容器里 ~/download:/home/hello 冒号前面是宿主机目录,后面是容器里的目录。

2、docker 容器的文件系统在宿主机上存在的方式很复杂,这会带来下面几个问题: 为了能够 保存(持久化) 数据以及 共享 容器间的数据,docker 引入了数据卷(volume) 机制。

3、针对上述的缺点,有些数据,例如数据库文件,我们不应该将其保存在镜像或者容器的可写层中。

未经允许不得转载:便宜VPS网 » docker宿主机容器互相访问,简述Docker容器与主机的关系