2017-12-18 149 views
0

工作落后企业代理--build-ARG值 - 我需要建立我的搬运工相似图片设置永久码头工人建立我的环境

docker build --build-arg http_proxy=http://my.proxy:80 .

这很好。

我有一个脚本,我已经检查了一堆码头构建 - 这是失败的,因为它没有到达代理。

有没有办法将我的本地环境设置为在执行docker build时总是使用我的代理设置?

我确实看过创建一个别名 - 但是这似乎有点让人厌烦,因为这些命令之间有空格?是否有我可以修改的简单全局配置?

回答

0

首先,请确保按照HTTP/HTTPS proxy中所述配置docker deamon的http_proxy设置。

这个配置应该足以让Docker在构建图像时提取并使用它。但是,如果dockerfile运行的内部命令正在创建一些自定义连接,则可能无法正确拾取此配置。

的代理设置可以从码头工人的信息被拾起:

$ docker info | grep Proxy 
Http Proxy: http://localhost:3128 
Https Proxy: http://localhost:3128 

您可以使用提供由搬运工人信息拿起值。

但是,我建议安装一个工具来将所有流量透明地路由到http代理。这样你就可以忘记代理服务器,并且你的机器上的所有工具都应该可以毫无用处地工作。

如果你在linux上,有redsocks。如果您不想将其直接安装在机器上,它也是一个docker image。对于其他平台,您可以使用proxycap

+0

叶 - 这个回答没有帮助。我的理解是,您为docker设置的代理设置 - 不适用于在构建期间获取npm或apt-get依赖关系的内容。请参阅:https://github.com/moby/moby/issues/24697 – dwjohnston