gpt4 book ai didi

docker - Dockerfile中的单独特定配置

转载 作者:行者123 更新时间:2023-12-02 20:52:02 24 4
gpt4 key购买 nike

我对docker镜像有设计问题。我创建了一个简单的Nginx镜像,并在其他文件中添加了一些配置。

这是我的Dockerfile:

FROM debian:wheezy

RUN apt-get update && apt-get install -y wget && \
echo "deb http://packages.dotdeb.org wheezy all" >> /etc/apt/sources.list && \
echo "deb-src http://packages.dotdeb.org wheezy all" >> /etc/apt/sources.list && \
wget http://www.dotdeb.org/dotdeb.gpg && apt-key add dotdeb.gpg && \
apt-get update && apt-get install -y nginx

RUN rm -rf /var/lib/apt/lists/* && \
echo "\ndaemon off;" >> /etc/nginx/nginx.conf && \
chown -R www-data:www-data /var/lib/nginx

ADD ./nginx/server.conf /etc/nginx/sites-available/default
ADD ./nginx/extra_conf /etc/nginx/

....

有了这个,我想在Docker注册表中创建一个自动构建(通过我的bitbucket帐户)。在构建期间,Docker需要具有 nginx/server.conf/nginx/extra_conf的路径。恕我直言,此配置是非常针对用户/项目的,因此不应包含在此级别(并且可能不在版本控制中)。

我该如何做些更通用的东西?

我以为可以使用 ONBUILD指令添加文件并创建 Dockerfile子级。问题是,它创建了无用的继承级别。

谢谢,
问候

最佳答案

您可以使用卷,因此可以将配置文件存储在主机上的/path/to/nginx/conf.d上:

docker run -v /path/to/nginx/conf.d:/etc/nginx/conf.d:ro nginx

卷也适用于常规文件。

关于docker - Dockerfile中的单独特定配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30383701/

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