如何看到fiddler中的http请求转到windows上的docker容器?

时间:2017-03-15 11:37:11

标签: http docker fiddler

我在Windows配置上使用默认的docker,我运行配置这样的应用程序:

docker run -d -p 8080:80 --name openproject ...

我可以使用浏览器访问该应用程序,但在fiddler中我看不到到docker容器的流量。我看到其他流量,所以我假设浏览器具有正确的代理设置。

我已将docker设置中的代理设置为fiddler(http://127.0.0.1:8888),但fiddler仍然无法看到容器中的任何内容。

2 个答案:

答案 0 :(得分:1)

如果您尝试查看退出容器的流量,请将其添加到您的Dockerfile中:

ENV http_proxy "http://host.docker.internal:8888/"
ENV https_proxy "http://host.docker.internal:8888/"

在Linux容器中,http_proxy和https_proxy环境变量应小写,这与某些Docker文档所说的(compound)相反

host.docker.internal可以将您引导到主机使用的内部IP地址(https://unix.stackexchange.com/questions/212894/whats-the-right-format-for-the-http-proxy-environment-variable-caps-or-no-ca)。

端口8888是Fiddler在主机中监听的端口。

答案 1 :(得分:0)

您可以通过查找Docker主机(在Hyper-V上运行的VM)的IP地址来实现。只需在命令shell上运行“ipconfig”。

默认IP地址可能是10.0.75.1(至少它在我的机器上)。

而不是http://localhost:8080浏览http://10.0.75.1:8080而fiddler会接收流量。