簡體   English   中英

如何配置Docker容器代理?

[英]how to configure docker containers proxy?

如何配置Docker容器代理?

首先,

我試圖使用設置好的方式“/etc/systemd/system/docker.service.d/http-proxy.conf”( https://docs.docker.com/config/daemon/systemd/#httphttps-proxy )它確實適用於docker daemon,但不適用於docker容器,看來這種方式僅對某些命令生效,例如“ docker pull”

二級,

我有很多Docker容器,我不想在每次啟動容器時都使用'docker run -e http_proxy = xxx ...'命令。

所以我想如果有一種方法可以在容器啟動時自動加載全局配置文件,我用谷歌搜索並獲得了設置文件'〜/ .docker / config.json'( 如何配置 docker 容器代理?方式仍然對我不起作用。

(我的主機系統是centos7,這是我的docker -v:Docker版本1.13.1,內部版本6e3bb8e / 1.13.1)

我覺得可能與我的docker版本或systemd服務啟動的docker有關,所以〜/ .docker / config.json無效。

最后,

我只是希望修改配置文件將允許我所有的容器在啟動時自動配置環境變量(即當容器啟動時自動設置的環境變量'http_proxy = http:// HostIP:8118 https_proxy = http:// HostIP:8118 '開始,就像Dockerfile參數ENV一樣。 我想知道是否有這種方法嗎? 如果可以實現這種方式,那么我可以使容器使用主機的代理,畢竟,主機的代理可以正常工作。

但是我錯了,我嘗試運行一個容器,然后設置http_proxy = http:// HostIP:8118和https_proxy = http:// HostIP:8118 ,但是當我使用命令“ wget facebook.com”時,我得到了“連接到HostIP:8118 ...失敗:主機沒有路由。',但是,主機(centos7)可以成功執行wget,並且我可以成功ping通容器中的主機。 我不知道為什么它可能與防火牆和8118端口有關。

結束了,

天哪..我別無選擇,有人可以幫助我嗎?

==============================

ps:您可以從下面的屏幕截圖中看到,我實際上想安裝goa和goagen但報告錯誤,可能是由於網絡原因,我想打開代理進行嘗試,所以...僅存在上述問題。

1.我去碼頭集裝箱在這里輸入圖像描述

去docker wget

2.我的房東

我的主人

您需要版本17.07或更高版本,才能自動將代理傳遞給使用config.json文件開始的容器。 1.13版本早已不受支持。

Docker對此進行了詳細記錄: https : //docs.docker.com/network/proxy/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM