详细内容或原文请订阅后点击阅览
实现更快构建和更小镜像的 5 个 Docker 最佳实践
通过应用一些智能 Docker 实践,您可以构建更快的映像,并保持它们干净、紧凑且可用于生产。
来源:KDnuggets简介
您已经编写了 Dockerfile,构建了镜像,一切正常。但随后您会注意到该映像超过了 1 GB,即使是最小的更改,重建也需要几分钟,而且每次推或拉都感觉非常缓慢。
这并不罕见。如果您在编写 Dockerfile 时不考虑基本映像选择、构建上下文和缓存,这些是默认结果。您不需要彻底检修来修复它。一些有针对性的更改可以将图像缩小 60 - 80%,并将大多数重建时间从几分钟缩短为几秒钟。
在本文中,我们将介绍五种实用技术,以便您可以了解如何使 Docker 镜像更小、更快、更高效。
先决条件
要继续操作,您需要:
选择 Slim 或 Alpine 基础图像
每个 Dockerfile 都以一条 FROM 指令开始,该指令选择一个基础镜像。该基本图像是您的应用程序赖以生存的基础,在您添加一行自己的代码之前,其大小将成为您的最小图像大小。
例如,官方 python:3.11 映像是一个完整的基于 Debian 的映像,加载了大多数应用程序从不使用的编译器、实用程序和软件包。
# 完整图像 — 包含所有内容
来自Python:3.11
# Slim 镜像 — 最小的 Debian 基础
# Alpine 镜像 — 更小、基于 musl 的 Linux
