gpt4 book ai didi

Dockerfile 和 dev/test/prod 环境

转载 作者:行者123 更新时间:2023-12-05 01:01:28 26 4
gpt4 key购买 nike

我想创建能够构建三个不同图像(目前一个)的 Dockerfile。这些图像仅在配置文件中有所不同。

我在尝试:

  • 创建三个不同的 docker 文件(不起作用,因为 dockerfile 需要命名为 Dockerfile 并且位于上下文根目录
  • 中)
  • 找到一种将参数传递给 docker build 命令的方法 - 没有找到
  • 使用 ONBUILD 命令 - 我创建了一个主文件和三个特定文件,它们将特定的 conf 文件复制到图像中的同一目录中(由于与第一点相同的原因,它不起作用)
  • 从标准输入传递 docker 文件 - 它不起作用,因为那时没有上下文(所以我不能使用 ADD/COPY 命令)

  • 我必须说我的想法用完了:/你如何处理这种情况。在我看来,这应该是一个普遍的问题。

    最佳答案

    为什么不在 Dockerfile 中复制所有 3 个配置文件,然后 docker run -e config=file1 (或 file2 或 file3)并使用配置环境变量的值来获取所需的配置文件。检查文档
    http://docs.docker.com/reference/commandline/cli/#run

    您也可以使用 --env-file=[] Read in a line delimited file of environment variablesdocker run命令。

    您可以使用 docker run -it -e mytag=abc123 ubuntu:latest env | grep mytag 检查环境变量是否可用显示 mytag=abc123

    关于Dockerfile 和 dev/test/prod 环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28169098/

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