具有不同网络接口的Docker容器

时间:2016-11-16 12:11:15

标签: networking docker vpn docker-networking

问题: 我希望在Docker容器中运行多个VPN服务器,每个容器都有自己的公共IP。

使用-p参数我可以分别连接到每一个但是我看到的公共ip是eth0接口而不是我希望它的那个(eth0:1)所以如何创建一个新的docker0使用eth0:1作为流量接口的接口?

致以最诚挚的问候和感谢。

1 个答案:

答案 0 :(得分:1)

Docker不使用它之外的网络。 对于来自世界之外的主机到容器之间的连接,使用端口绑定。 在创建docker镜像时,在Dockerfile中公开端口 将Docker容器暴露给主机:       公开容器对于主机识别哪个端口容器运行非常重要。       -p in docker run命令用于公开端口。       语法:docker run -p host_ip:host_port:container_port image_name        例如,docker run -itd -p 192.168.134.122:1234:1500 image_name
      这将容器的端口1500绑定到主机的192.168.134.122上的端口1234       使用Iptables查看网络进程 - iptables -L -n -t nat

  Now the request send to host_ip (192.168.134.122) and port (1243) is redirect to container with ip (172.17.0.2) and port (1500).