【问题标题】:Docker flow for updating images with latest version of application使用最新版本的应用程序更新图像的 Docker 流程
【发布时间】:2018-01-20 03:06:26
【问题描述】:

我们的生产/暂存 docker 镜像构建从我们的存储库中提取最新代码,然后安装所有必需的依赖项,这个过程需要一段时间。

这就是为什么我们在开发中使用卷将应用程序代码映射到本地文件夹。

有没有办法将映射卷中的本地更改提交到实际的图像数据存储?这样我们就不必一直重建它?

【问题讨论】:

    标签: docker docker-container docker-volume docker-build


    【解决方案1】:

    能够放置您的代码并标记 docker 映像是人们使用它的目的。您不应该在生产运行时部署代码。相反,您应该构建图像并根据版本标记它们。

    您想知道您的产品正在运行什么,并且还希望能够回滚到以前的版本。

    现在回到重建代码部分。有多种方法可以缩短构建时间

    创建基础映像

    您可以创建基础映像,然后将代码放在该基础映像之上。此基础映像将包含您所需的软件(节点等)。在您的 Dockerfile 中,您只需复制代码即可。

    使用标签 URL 代替 Git Checkout

    您可以将特定分支/标签下载为 zip 文件而不是整个存储库,然后解压缩。我看到有时 Git 存储库是 100MB,而代码只有 4-5 MB。这可以节省您的时间

    使用多阶段构建

    多阶段构建不会为您节省构建时间,但它们会为您节省图像大小。仅当您部署大量容器时才需要这样做

    【讨论】:

      猜你喜欢
      • 2015-07-19
      • 2023-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-02
      • 1970-01-01
      相关资源
      最近更新 更多