当前位置: 首页 > 面试题库 >

Docker文件更改时Docker更新映像

葛和志
2023-03-14
问题内容

我正在通过创建Dockerfile带有一些nodejs指令的来玩docker。现在,每次更改dockerfile时,我都会通过sudo docker build -t nodejstest .在项目文件夹中运行来重新创建映像,但这每次都会创建一个新映像,并很快吞没我的ssd。

更改dockerfile时,是否有一种方法可以更新现有映像,或者每次更改文件时都被迫创建一个新映像?

抱歉,这是一个愚蠢的问题


问题答案:

只要没有ADD指令,Docker构建支持缓存。如果您正在积极地开发和更改文件,则仅ADD重建之后的内容。

从0.6.2(今天计划)开始,您可以执行此操作docker build --rm .,它将删除临时容器。它将保留图像。

为了删除孤立图像,您可以使用检出孤立图像docker images,然后docker rmi <id>对其中一个进行操作。截至目前,该软件已经过自动修剪,所有未加标签的图像(孤立的图像,以前的版本)将被删除。



 类似资料:
  • 问题内容: 为了运行ASP.NET Core应用程序,我生成了一个dockerfile,该文件构建了该应用程序,并将源代码复制到了容器中,该容器由Git使用Jenkins获取。因此,在我的工作区中,我在dockerfile中执行以下操作: 虽然Jenkins使用Git正确更新了主机上的文件,但Docker并未将其应用于我的映像。 我的基本构建脚本: 我尝试了各种不同的操作,例如和参数,并 在 构建

  • 我是开发和的新手,在更改项目中的文件时遇到了一个问题。我的问题是: 我对项目中的任何文件(模板、视图、URL)的内容进行了更改,但在我当前运行的应用程序中,这些文件没有更新。我总是希望看到我的更改,我需要重新启动服务器(我正在使用),执行。是否有我应该安装/做的软件包或更改,以使其能够在运行时接受更改? 这是我的: 让我知道我可能提供的任何其他信息,以便更好地了解问题(如果不够清楚的话)。

  • 据我所知,docker映像在被拉取时被安装到。有没有办法更改此位置,例如更改到像这样的已安装卷?

  • 问题内容: 我正在尝试运行docker和docker-compose的最新稳定版本。 我正在按照https://docs.docker.com/engine/installation/linux/ubuntulinux/上的说明进行操作 显然,docker-compose的当前版本是1.7。 但是,在阅读了文档并安装docker-engine之后,我得到了: 和 当我尝试更新它时,得到以下信息:

  • 为了运行ASP. NET Core应用程序,我生成了一个dockerfile来构建应用程序并将源代码复制到容器中,该容器由Git使用Jenkins获取。所以在我的工作区中,我在dockerfile中执行以下操作: 虽然Jenkins使用Git正确更新了我主机上的文件,但Docker不会将其应用于我的映像。 我的基本建筑脚本: 我尝试了不同的方法,例如用于docker run的rm和no cache

  • 我想要dockerise的遗留web应用程序使用一些旧的类,如,这些类在Java SE7之前一直受到支持。现在,在docker容器中,默认的jdk获取(在安装tomcat-6容器时)是 OpenJdk不支持这些类