gpt4 book ai didi

docker - Dockerfile 是否总是必须放在构建上下文根目录中?

转载 作者:行者123 更新时间:2023-12-04 23:42:37 35 4
gpt4 key购买 nike

假设我有一个 Django 项目,想创建几个 Dockerfile,它们将使用不同的设置集和系统包(不要与 Python 库混淆)。为了让应用程序运行,我必须将完整的项目代码库复制到图像中。

现在我看到了Setting up a docker / fig Mesos environment这启发了我将每个单独的 Dockerfile 放入项目根目录中它自己的目录中。

docker build env1/ 可预测地创建一个 env1 的 tarball 并使用它来构建图像。

有什么方法可以重新定义 Dockerfile 名称或构建上下文根?

最佳答案

Docker 1.5引入了“指定要在构建中使用的 Dockerfile”的选项:

Specify the Dockerfile to use in build

Contributed by: Doug Davis – Link to PR

This is possibly one of the most requested feature in the past few months: the ability to specify the file to use in a docker build rather than relying on the default Dockerfile. docker build -f allows you to define multiple Dockerfiles in a single project and specify which one to use at build time. This can be helpful if you require separate Dockerfiles for testing and production environments.

有了这个特性,您就不需要为多个 Dockerfile 设置单独的文件夹,因此不再需要为每个 Dockerfile 设置不同的文件夹。只需在您的根文件夹中放置多个 Dockerfile,然后使用 -f 选项构建每个 Dockerfile。

关于docker - Dockerfile 是否总是必须放在构建上下文根目录中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28502599/

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