在Docker中无法将端口绑定到0.0.0.0

时间:2019-05-16 18:15:36

标签: docker docker-compose

我有一个docker-compose定义了2个服务:一个vpn客户端和一个代理。代理通过vpn并公开一个端口以使用它。

services:
  vpn:
    image: my_vpn_image
    devices:
    - /dev/net/tun
    cap_add:
    - net_admin
    ports:
    - "8118:8118"

  privoxy_vpn:
    image: splazit/privoxy-alpine
    network_mode: "service:vpn"

当我使用本地适配器时可以使用

http_proxy=localhost:8118 curl www.ok.com

但是如果我尝试在其他适配器中使用ip,它将无法正常工作。假设我的IP地址是192.168.1.99

http_proxy=192.168.1.99:8118 curl -vvv www.ok.com
  
      
  • 在0毫秒内到期6次(传输0x555e81b285c0)
  •   
  • 使用代理环境变量http_proxy =='192.168.1.99:8118'
  •   
  • 尝试192.168.1.99 ...
  •   
  • 设置了TCP_NODELAY
  •   
  • 在200毫秒内到期4(传输0x555e81b285c0)   curl:(7)无法连接到192.168.1.99端口8118:连接超时
  •   

如果我将vpn容器更改为使用另一个,请说nginx:

    services:
  vpn:
    image: nginx
    devices:
    - /dev/net/tun
    cap_add:
    - net_admin
    ports:
    - "8118:8118"

  privoxy_vpn:
    image: splazit/privoxy-alpine
    network_mode: "service:vpn"

有效。

我缺少与vpn容器或network_mode相关的内容。

0 个答案:

没有答案