我有一个Dockerfile:
FROM node:argon
ENV http_proxy http://user:pass@proxy.company.priv:3128
ENV https_proxy https://user:pass@proxy.company.priv:3128
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
# Install app dependencies
COPY package.json /usr/src/app/
RUN npm install
# Bundle app source
COPY . /usr/src/app
EXPOSE 8080
CMD [ "npm", "start" ]
但我在npm安装步骤中遇到了这个错误:
npm info它工作,如果它结束与ok npm info使用npm@2.14.12npm info使用node@v4.2.6npm WARNpackage.jsondeployer-ui@1.0.0没有描述npm WARNpackage.jsondeployer-ui@1.0.0没有存储库字段。npm WARNpackage.jsondeployer-ui@1.0.0没有README数据npm info预装deployer-ui@1.0.0npm info尝试注册表请求尝试#1在7:09:23 AM npm超文本传输协议请求GEThttps://registry.npmjs.org/body-parsernpm info尝试注册表请求尝试#1在7:09:23 AM npm超文本传输协议请求GEThttps://registry.npmjs.org/expressnpm info重试将重试,最后一次尝试时出错:错误:隧道套接字无法建立,原因=写入EPROTO npm info重试将重试,最后一次尝试时出错:错误:隧道套接字无法建立,原因=写入EPROTO
我想这是由于代理。我也试着把
RUN npm config set proxy http://user:pass@proxy.company.priv:3128
RUN npm config set https-proxy http://user:pass@proxy.company.priv:3128
但仍然得到同样的错误。
此外,在我的文件/etc/systemd/system/docker中。服务d/http代理。我有这个:
Environment="HTTP_PROXY=http://user:pass@proxy.company.priv:3128"
Environment="HTTPS_PROXY=https://user:pass@proxy.company.priv:3128"
提前谢谢。
将此添加到Dockerfile对我很有用:
RUN npm config set https-proxy http://user:password@proxy.company.priv:80
RUN npm config set proxy http://user:password@proxy.company.priv:80
我也有同样的问题,不想在我的图像中设置任何代理信息,因为我不想依赖于我的公司环境。
我的解决方案是使用在网关模式下运行的cntlm。为此,我在我的cntlm配置文件中将标志设置为“是”,如下允许规则:
Gateway yes
# Allow local
Allow 127.0.0.1
# Allow docker subnetwork
Allow 172.17.0.0/16
然后我能够通过获取dokcer0接口地址(使用ifconfig
命令获得)来运行我的docker文件:
docker build -t my-image --build-arg HTTP_PROXY=http://172.17.0.1:3128 --build-arg HTTPS_PROXY=http://172.17.0.1:3128 .
与docker run相同:
docker run --rm -e HTTP_PROXY=http://172.17.0.1:3128 --build-arg HTTPS_PROXY=http://172.17.0.1:3128 my-image
但是请注意,由于docker 17.07,您可以简单地配置docker客户端代理。
因此,您的<代码>~/。docker/config。json将类似于
{
"proxies": {
"default":{
"httpProxy": "http://172.17.0.1:3128/",
"httpsProxy": "http://172.17.0.1:3128/",
"noProxy": "127.0.0.1,172.17.0.0/16,*.some.compagny.domain"
}
}
首先,https_proxy
应该使用超文本传输协议url,而不是https url。
其次,您不需要将代理设置嵌入到Dockfile中:您可以使用构建时变量
docker build--构建arg HTTP\U代理=http://user:pass@代理。公司priv:3128—构建arg HTTPS\u代理=http://user:pass@代理。公司私人:3128
最后,docker服务级别的代理设置允许docker守护进程从internet提取图像。这并不意味着docker build执行的unix命令(RUN指令)将从中受益。因此需要将它们作为构建时环境变量传递。
一、要求 你需要一个主机来运行代理。我们为每个设备创建一个代理。主机可以运行多个代理。 任何支持NodeJS和adb的操作系统都应该可以正常工作,但是Linux和Windows是唯一可以进行定期测试的操作系统。 如果你的主机只有USB 3,你可能需要使用Windows(至少截至2014年2月,Linux上的USB 3驱动程序非常不稳定)。 如果你的主机作为USB 2.0端口,那么Linux
我想在我的Windows 10上安装水槽代理,以便将日志放入安装在虚拟机上的hortonworks沙盒中。我参考这个链接做了所有设置-https://gudisevablog.wordpress.com/2016/12/08/apache-flume-windows-10/但是当我运行这个时出现了一些问题 命令 - “ flume-ng agent –conf %FLUME_CONF% –conf
我正在我的服务器debian上安装mediaproxy。请查看下面粘贴的错误。我也尝试过安装依赖项,但仍然会发生此错误。我需要帮助。 root@server:/usr/local/src/mediaproxy-2.5。2# ./设置。py build运行build运行build\u py运行build\u ext building'mediaproxy。接口。系统_conntrack'扩展x86_
我正在尝试安装的Centos 7 64位与Java8和Tomcat 8 Janalyiler代理 root@ads[/opt/jprofiler9]#jpenable连接到组织。阿帕奇。卡特琳娜。启动。引导启动[23360]。。。请选择分析模式:GUI模式(附加JProfiler GUI)[1,输入]脱机模式(使用配置文件设置分析设置)[2]1请输入分析端口[59687]8849
我想使用apache web server从tomcat服务器反向代理web服务。我已经修改了httpd。形态 我的Tomcat服务器运行在端口8080上,现在当我运行localhost/ROOT时,我得到错误500内部服务器错误。 错误日志中的最后一项是: 知道我做错了什么吗?
我在新的开发计算机上安装了Visual Studio2012,运行良好。我不假思索地将VS2010安装到已经安装了2012年的电脑上。2012年继续正常工作,但2010年不能编译我以前工作的任何源代码,它似乎无法找到任何正确的库。 例如,在一个简单的C++hello world程序中,我得到以下错误