非宿主机外部访问docker容器问题
简单介绍一下我的环境:
1、docker宿主机(os:centos7, ip:192.168.0.100)
2、宿主机中用brctl新建一个虚拟网桥bridge0(brctl addbr bridge0),并分配IP为192.168.227.1
(ifconfig bridge0 192.168.227.1 netmask 255.255.255.0)
3、然后docker容器以网桥方式用pipework挂到bridge0下:
docker run -idt --privileged -h="h2" -p 80:80 --net=none --name h2 7322fbe74aa5 /sbin/init
pipework bridge0 h2 192.168.227.2/ 24@192.168.227.1
综上所诉:宿主机和非宿主机都是192.168.0网段;而docker容器是192.168.227网段
现在的问题是:
我用一台非宿主机(os:win8, ip:192.168.0.101)试图连docker容器h2失败(ping 192.168.227.2 不通),而宿主机ping 192.168.227.1和192.168.227.2 都是能ping通的,在容器h2中ping这台win8机器也能ping通,而且能访问公网。要怎么设置才能让一台非宿主机在外部直接访问容器?比如用ssh直接从192.168.0.101登录到192.168.227.2中?
1、docker宿主机(os:centos7, ip:192.168.0.100)
2、宿主机中用brctl新建一个虚拟网桥bridge0(brctl addbr bridge0),并分配IP为192.168.227.1
(ifconfig bridge0 192.168.227.1 netmask 255.255.255.0)
3、然后docker容器以网桥方式用pipework挂到bridge0下:
docker run -idt --privileged -h="h2" -p 80:80 --net=none --name h2 7322fbe74aa5 /sbin/init
pipework bridge0 h2 192.168.227.2/ 24@192.168.227.1
综上所诉:宿主机和非宿主机都是192.168.0网段;而docker容器是192.168.227网段
现在的问题是:
我用一台非宿主机(os:win8, ip:192.168.0.101)试图连docker容器h2失败(ping 192.168.227.2 不通),而宿主机ping 192.168.227.1和192.168.227.2 都是能ping通的,在容器h2中ping这台win8机器也能ping通,而且能访问公网。要怎么设置才能让一台非宿主机在外部直接访问容器?比如用ssh直接从192.168.0.101登录到192.168.227.2中?