[英]Building a Docker Image via compose results into a new image. why?
构建代码存储库总是会生成一个新映像,而它应该替换/更新现有映像。 在源文件中进行更改后,如何重建同一映像,我正在通过命令构建容器映像。
$docker-compose up --build
响应如下:
vagrant@vagrant-ubuntu-trusty-64:/var/lib$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE nodeapi_www latest 74378f9c5de5 5 seconds ago 684.3 MB none none d358efc16f16 About an hour ago 684.3 MB node 4.4.1 4e2e99ae7d3e 5 weeks ago 643.8 MB
这是我运行docker-compose up --build命令之前的图像是webapp图像。 之后,我在图像列表中得到一个孤儿图像。
由于docker工作方式的性质,如果进行任何更改,则将需要一个新映像,因为映像不会像容器那样更改。
进行构建时,请尝试执行以下操作,然后查看是否有助于删除较旧的图像。
$ docker-compose up --build --remove-orphans
如果您不希望有太多图像,请考虑使用卷,以便要更改的项目都在卷中,并且无需在每次更改其中一个文件时都进行重建。
要查看此示例,请查看https://docs.docker.com/compose/django/,它不是node.js,但想法是相同的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.