2017-12-18 189 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