首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Docker容器中本地运行的PHP应用程序中使用在Visual Studio 2017中本地运行的wcf服务?

如何在Docker容器中本地运行的PHP应用程序中使用在Visual Studio 2017中本地运行的wcf服务?
EN

Stack Overflow用户
提问于 2018-09-03 01:21:55
回答 1查看 0关注 0票数 0

我有一个localhost:56000从Visual Studio项目在调试模式下运行的WCF服务。我还有一个运行在Docker容器中的LAMP应用程序localhost:8080。在我的configuration.php中,我有一个全局可用的变量SoapUri,它被设置为wsdl端点public $SoapUri = 'https://[WCF-server-address]/serviceName.svc?wsdl';

这适用于生产,但设置$ SoapUri public $SoapUri = 'http://localhost:56000/serviceName.svc?wsdl';不起作用。

我知道localhost引用容器内的localhost,我可以使用一个特殊的DNS名称'host.docker.internal'来引用容器主机,但更改$ SoapUri public $SoapUri = 'http://host.docker.internal:56000/serviceName.svc?wsdl';也不起作用。

我也试过这个:

代码语言:javascript
复制
C:\Users\userName>ipconfig

Windows IP Configuration

Ethernet adapter vEthernet (DockerNAT):

   Connection-specific DNS Suffix  . :
   Link-local IPv6 Address . . . . . : fe80::cd21:7994:1a5a:7cc0%3
   IPv4 Address. . . . . . . . . . . : 10.0.75.1
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . :

然后设置为 public $SoapUri = 'http://10.0.75.1:56000/serviceName.svc?wsdl';

这似乎是最有希望的,因为我不会马上抛出这个错误......

代码语言:javascript
复制
php_1     | [20-Jul-2018 19:06:27] WARNING: [pool www] child 5 said into stderr: "NOTICE: PHP message: PHP Fatal error:  SOAP-ERROR: Parsing WSDL: Couldn't load from 'host.docker.internal:56000/serviceName.svc?wsdl' : failed to load external entity "host.docker.internal:56000/serviceName.svc?wsdl""

...但反而先超时然后抛出错误,但我认为这是误导。

显然我在这里遗漏了一些东西,并且当我尝试从容器中查找本地wsdl地址时,我真的不明白发生了什么。

EN

回答 1

Stack Overflow用户

发布于 2018-09-03 10:50:11

转到您的docker容器,获取主机IP地址并替换您的代码。

代码语言:javascript
复制
public $SoapUri = 'http://host_ip_address:56000/serviceName.svc?wsdl'; 

有关如何获取主机IP的信息:如何从docker容器中获取docker主机的IP地址

如果要设置主机IP,此处有一些说明如何在创建docker机器或容器时设置特定(固定)IP地址?这里有没有办法强制docker-machine用特定的ip创建vm?

PS:您可能想要做一些逻辑来检测环境并替换地址。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100002535

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档