无法找到套接字传输“username”(在docker容器内的cURL或composer)

时间:2017-11-28 15:10:06

标签: php ssl docker curl proxy

我支持需要用户/ pw身份验证的公司代理。我在Windows 10计算机上的docker客户端中输入了凭据。这些设置过去曾用过。我在var room = outerJSON.name; var jsonObject = jQuery.parseJSON(JSON.stringify(data)); var innerArray = jsonObject[room]; // returns undefined var innerArray2 = jsonObject.get(room); // Uncaught TypeError: jsonObject.get is not a function 进程中使用与--build-arg相同的凭据,它也有效。我可以构建基于openSUSE的图像并运行它。

该图像包含cURL和composer(用于PHP开发)。我可以在公司代理网络之外使用这些工具而不会出现问题。但是,在公司内部,我尝试:

docker build

curl --silent --show-error https://getcomposer.org/installer | php

我收到此错误消息:

无法打开流:无法找到套接字传输“xxx” - 您是否忘记在配置PHP时启用它?

其中xxx是来自docker代理设置的用户名用户名:password@123.456.789.0:port

据我所知,curl和composer认为我的用户名是一个应该用来下载文件的协议。这应该更像是“http”或“ssl”等!?

非常感谢任何帮助!我正在使用zypper安装curl:composer self-update

1 个答案:

答案 0 :(得分:1)

代理是开发工具的地狱。您必须考虑每个工具的代理配置。 我的建议是安装一个工具,透明地将所有流量从主机路由到代理。

此类工具适用于Windows proxycap。在计算机上安装后,应将所有流量重定向到代理,并且不必为任何工具配置代理设置。