gpt4 book ai didi

docker 1.7.1 : Is there a way to provide dynamic information to Dockerfile while building image

转载 作者:行者123 更新时间:2023-12-02 19:37:23 25 4
gpt4 key购买 nike

我正在尝试在 Bamboo 代理上构建一个图像,其中 http_proxy 由管理员动态设置并不断变化。

我需要提供apt-get updateapt-get upgrade -y在 Dockerfile 中,这又需要访问这个动态设置的公司 http_proxy

关于如何将其提供给 docker build 的任何指针/Docker 文件?

基本上,我正在寻找一个类似 --build-arg 的选项,它是在最新的 docker 版本中引入的。

PS:升级 docker 版本不是一个选项。

最佳答案

一种适用于 1.7.1 的解决方案是创建一个类似 env 的文件。 :

export http_proxy=<your-proxy>
export https_proxy=<your-proxy>

然后在你的 Dockerfile COPY它在然后 sourceRUN 中的 apt 命令之前指令类似于:
# Dockerfile
...
COPY env /scripts/
RUN source /scripts/env && \
apt-get update
...

然后您只需更改 env 中的代理值构建之前的文件。可以手动执行此操作或创建一个 Hook 类型脚本来执行此操作。这样做的一个明显的巨大缺点是你一直在破坏你的构建缓存来复制新文件。不过,由于你的(真的)旧 Docker 版本,我看不到任何其他选项。

关于 docker 1.7.1 : Is there a way to provide dynamic information to Dockerfile while building image,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43314134/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com