有没有一种方法可以在Docker中自动“重新设置”映像?

时间:2019-11-06 18:18:45

标签: docker docker-compose

我有一个docker-compose脚本来启动服务

version : '2.0'
services:
        orig-db:
             image: web-url:{image_tag}
        custom-db:
             image: local_image: latest

自定义数据库中使用的映像是以下结果的结果:使用orig-db调出一个容器,执行一些基本的bash命令,并执行docker commit。我希望custom-db映像始终是原始映像+这些命令,即使原始映像已更新也是如此。有办法“变基”原始图像吗?

1 个答案:

答案 0 :(得分:1)

您可以将Dockerfile视为“变基”的一种简单形式。

# Content of subdir/Dockerfile
FROM orig_image:latest

RUN some.sh
RUN basic.sh
RUN bash_commands.sh

基于此文件构建映像时,它将始终在基本映像顶部运行bash命令。在撰写文件中,您可以使用build属性来指示docker-compose生成映像,而不是使用预制映像。

version : '2.0'
services:
    orig-db:
         image: web-url:{image_tag}
    custom-db:
         build: somedir

如果基本映像更改,则需要告诉docker-compose再次重建custom-db映像,在更新的原始映像之上再次运行bash命令。

docker-compose up -d --build custom-db