【发布时间】:2023-03-19 10:46:01
【问题描述】:
我支持合作代理并在 Windows 10 上运行 docker。我已根据 documentation here 在 docker 上设置代理。
我可以提取图像,但这些代理设置不会传播到容器,例如当我运行 alpine env 时,它不显示代理配置。以下是我的输出
λ docker run alpine env
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
HOSTNAME=14fca5bee12f
HOME=/root
以下是文档中的预期输出。
在构建以下 docker 文件时,我从 alpine 容器中收到连接错误
Docker 版本
Docker version 17.12.0-ce, build c97c6d6
DockerFile
FROM alpine:latest
ADD HelloWorld.class HelloWorld.class
RUN apk --update add openjdk8-jre
ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "HelloWorld"]
错误
Step 3/4 : RUN apk --update add openjdk8-jre
---> Running in 1205b24d5044
fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/main/x86_64/APKINDEX.tar.gz
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.7/main: could not connect to server (check repositories file)
WARNING: Ignoring APKINDEX.70c88391.tar.gz: No such file or directory
fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/community/x86_64/APKINDEX.tar.gz
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.7/community: could not connect to server (check repositories file)
WARNING: Ignoring APKINDEX.5022a8a2.tar.gz: No such file or directory
ERROR: unsatisfiable constraints:
openjdk8-jre (missing):
required by: world[openjdk8-jre]
The command '/bin/sh -c apk --update add openjdk8-jre' returned a non-zero code: 1
将代理作为构建参数传递
我尝试了以下命令,它成功了。是否有任何其他方法可以自动传播文档中提到的代理设置(请参阅上面的链接)
docker build --tag "docker-hello-world:latest" . --build-arg http_proxy=http://<username>:<password>@proxy_address:proxy_port/ --build-arg https_proxy=http://<username>:<password>@proxy_address:proxy_port/ --build-arg no_proxy=localhost,127.0.0.1
【问题讨论】:
-
你没有提到你的
docker version。 -
用 docker 版本更新了帖子
-
您是使用使用系统代理(如果可用)还是手动代理配置?
-
我已经在docs.docker.com/docker-for-windows/#proxies 中提到的docker设置上设置了代理另外我还设置了名为proxy和https_proxy的系统环境变量
-
对话框中有三个选项。您能否确认 手动代理配置 不起作用?
标签: docker proxy windows-10 containers