在Dockerfile中使用代理运行apt-get

我在代理后面,我需要通过安装一些东西apt-get

我最好的是这个

ARG PROXY

ENV http_proxy=$PROXY

ENV https_proxy=$PROXY

RUN apt-get update -y && apt-get -y install ...

ENV http_proxy=

ENV https_proxy=

问题是,我之后需要取消设置这些环境变量。

任何想法如何做到少于5层?

回答:

您需要使用构建时变量(–build-arg)。

该标志允许您传递在Dockerfile的RUN指令中像常规环境变量一样被访问的构建时变量。而且,这些值不会像ENV值那样保留在中间或最终图像中。

因此,您Dockerfile只有3行:

ARG http_proxy

ARG https_proxy

RUN apt-get update -y && apt-get -y install ...

您只需要定义构建时变量http_proxy和/或https_proxy在图像构建过程中:

$ docker build --build-arg http_proxy=http://<proxy_ip>:<proxy_port> --build-arg https_proxy=https://<proxy_ip>:<proxy_port> .

以上是 在Dockerfile中使用代理运行apt-get 的全部内容, 来源链接: utcz.com/qa/414468.html

回到顶部