当前位置: 首页 > 知识库问答 >
问题:

Docker Ubuntu背后的代理

司空俊悟
2023-03-14

查看文档时,没有关于如何在代理后运行它的说明。https://docs.docker.com/installation/ubuntulinux/

在论坛上阅读,说明是更新/etc/default/docker以导出代理设置。

 export http_proxy="http://127.0.0.1:3128/"
 export https_proxy="http://127.0.0.1:3128/"
 export HTTP_PROXY="http://127.0.0.1:3128/"
 export HTTPS_PROXY="http://127.0.0.1:3128/"

然后我们重启/启动docker

 sudo service docker start

在容器中,如果运行“apt-get”、npm-install、bower-install,则无法通过代理。

不知道我错过了什么。

共有3个答案

余铭晨
2023-03-14

您可以尝试在/etc/environment中添加行:

https_proxy="http://127.0.0.1:3128"
http_proxy="http://127.0.0.1:3128"
ftp_proxy="http://127.0.0.1:3128"
no_proxy="127.0.0.1/8, localhost, 192.168.0.0/16"

它对于Linux系统上的所有服务都很有用

然后编辑/lib/system d/system/docker.service。在[Service]部分的末尾,添加行:

EnvironmentFile=/etc/environment

然后呢:

sudo systemctl daemon-reload
sudo systemctl restart docker.service
慕阳伯
2023-03-14

对于Ubuntu 14.04.2 LTSLinux vagrant-Ubuntu-trusty-64 3.13.0-54-generic\91 Ubuntu SMP周二5月26日19:15:08 UTC 2015 x86\u 64 x86\u 64 GNU/Linux

编辑你的/etc/默认/docker文件

sudo vim /etc/default/docker

在底部添加此行:

export http_proxy="http://PROXY_IP:PROXY_PORT"

重启docker服务

sudo service docker restart
张积厚
2023-03-14

对于使用SysVinitubuntu14.04 LTS,您应该修改/etc/default/docker文件:

# cat /etc/default/docker
# Docker Upstart and SysVinit configuration file

#
# THIS FILE DOES NOT APPLY TO SYSTEMD
#
#   Please see the documentation for "systemd drop-ins":
#   https://docs.docker.com/engine/articles/systemd/
#

.......
# If you need Docker to use an HTTP proxy, it can also be specified here.
export http_proxy="http://web-proxy.corp.xxxxxx.com:8080/"
export https_proxy="https://web-proxy.corp.xxxxxx.com:8080/"
......

然后重新启动docker

service docker restart

对于使用Systemdubuntu16.04lts,您可以点击以下帖子:

(1)创建system d下拉目录:

mkdir /etc/systemd/system/docker.service.d

(2)在/etc/system/system/docker.service.d/http-proxy.conf文件中添加代理:

# cat /etc/systemd/system/docker.service.d/http-proxy.conf
[Service]
Environment="HTTP_PROXY=https://web-proxy.corp.xxxxxx.com:8080/"
Environment="HTTPS_PROXY=https://web-proxy.corp.xxxxxx.com:8080/"
Environment="NO_PROXY=localhost,127.0.0.1,localaddress,.localdomain.com"

(3)齐平变化:

systemctl daemon-reload

(4) 重新启动Docker:

systemctl restart docker

官方参考

 类似资料:
  • 问题内容: 是否可以在使用NTLM身份验证的HTTP代理后面运行?如果是,如何设置服务器的地址和端口,用户名和密码? 问题答案: 我通过以下方式解决了此问题(操作系统:Windows XP SP3): 1. 下载CNTLM安装程序并运行它。 2. 在cntlm.ini中找到并填写这些字段。 不要填写该字段,在文本文件中存储未加密的密码永远不是一个好主意。 3. 打开控制台,然后键入以下命令以生成密

  • 我知道这种类型的问题已经存在很多年了,我尝试了每一个解决方案,但没有运气。 我试图设置与Flutter的Android Studio开发环境。我不断收到关于证书的错误。 Sun.security.validator.validatoreXception:PKIX路径构建失败:sun.security.provider.certPath.SunCertPathBuilderException:找不到

  • 问题内容: 我在只能访问HTTP或袜子代理的网络上使用composer。我有http_proxy和https_proxy环境变量。当compose尝试访问HTTPS URL时,我得到以下信息: 据我所知,连接到https网站的唯一方法是使用连接动词。如何在此代理后面使用作曲家? 问题答案: 如果您使用的是Linux或Unix(包括OS X),则应将其放在会影响环境的位置: 您可以将其放入全局范围内

  • 我在服务器上安装了keycloak standanlone,并尝试通过Nginx在反向代理后面使用它。Keycloak绑定到127.0.0.1

  • 代理后超时失败,设置如下(某些设置无效…): 我还尝试过安装/卸载bower和