我想创建两个Docker镜像,一个是另一个的子代。但是我不知道我在父级中指定的属性(例如 WORKDIR , ENTRYPOINT , VOLUME ,...)是否适用于子级。
例如,如果我有两个带有两个Dockerfile的镜像:
FROM ruby:2.2.3
RUN mkdir -p /app
WORKDIR /app
COPY Gemfile Gemfile.lock ./
RUN gem install bundler && bundle install
VOLUME /app
ENTRYPOINT ["bundle", "exec"]
FROM myrepo/webapp-build
COPY . ./
EXPOSE 3000
CMD ["rails", "server", "-b", "0.0.0.0"]
第二张图片是否会将文件复制到/ app中?我在第二个镜像中的入口点将是bundle exec吗?
最佳答案
这些属性确实使用所述基础图像(带有 FROM
directive)从一个基础图像传播到另一基础图像。
但是对于WORKDIR
,最好重复它以记录“。”。意思是COPY . xxx
关于docker - Dockerfile WORKDIR,ENTRYPOINT,VOLUME…是否适用于子镜像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35719351/