我想要实现的目标 - >我想通过docker容器使用我本地运行的应用程序。
我创建了一个在docker容器中运行的apache代理。 proxy(docker container) - > localhost应用程序(在物理主机上)
当我将浏览器指向docker_ip:8001时,apache实例正在运行,但它无法代理主机localhost。
配置如下:
<Location /test/auth>
SSLRequireSSL
SSLVerifyClient optional
SSLVerifyDepth 3
SSLOptions +ExportCertData +StdEnvVars
RewriteEngine on
RewriteCond %{SSL:SSL_CLIENT_VERIFY} !^SUCCESS$
RewriteRule .* /test/fail [L]
</Location>
RequestHeader set HTTPS "%{HTTPS}s" env=HTTPS
...
ProxyPass /test http://host:8080/test retry=0
ProxyPassReverse /test http://host:8080/test
我在wildfly @ http://localhost:8080/test(主机)上运行了一个应用程序
预期的行为是我去了docker_ip:8001 / test,我可以使用在http://localhost:8080/test运行的应用程序。
This不适用于我,也不适用于其他类似问题。 eth0 ip是可以ping的,但是当我确实忘记了连接时。
所以我尝试了
docker run --add-host=host:192.168.xxx.xxx -p 8001:443 -it docker-test bash
现在对主机的ping和wget工作得很好,它收到了我在主机上运行的apache的响应。如何用localhost替换192.168.xxx.xxx?
*注意:使用win7,但这不应该真的重要吗?