asp.net核心docker图像"aspnet:2.2-stretch-slim"

asp.net core docker image "aspnet:2.2-stretch-slim"

我最近创建了一个新的 asp.net 核心 2.2 项目,在对 dockerfile 进行更改时,我注意到 visual studio 模板使用了一个我不熟悉且无法找到相关文档的新基础映像.谁能解释这个 "stretch-slim" 图像是什么以及它与我期望看到的 aspnet 图像有何不同?

实际

FROM mcr.microsoft.com/dotnet/core/aspnet:2.2-stretch-slim AS base
WORKDIR /app
EXPOSE 80
FROM microsoft/dotnet:2.2-sdk AS build

预计

FROM mcr.microsoft.com/dotnet/core/aspnet:2.2 AS base
WORKDIR /app
EXPOSE 80
FROM microsoft/dotnet:2.2-sdk AS build

stretch-slim 是指 aspnet 映像使用的基本 debian 映像。 Stretch 是 Debian 9 的开发代号,Slim 是 debian 所需的最低先决条件,并且从映像中排除了额外的工具和包。

.NET Core 2.2 Docker 图像目前有四种版本,具体取决于它们所基于的 OS 图像:debian:stretch-slim,ubuntu:bionic、alpine:3.8 和 alpine:3.9。还有 ARM32 版本的 debian 和 ubuntu 映像。 Debian 是 .NET Core docker 映像使用的默认 OS。

Asp.net 核心选择 debian:stretch-slim 作为基础图像,这为 asp.net 图像提供了最小的 OS 占用空间。

以下标签均引用同一张图片 2.2.6-弹力修身, 2.2-弹力修身, 2.2.6, 2.2

参考文献:

我在搜索 mcr.microsoft.com/dotnet/core/aspnet:3.0-buster 图片是什么时看到了这个答案。经过一番挖掘后发现 Buster 是最近刚刚发布的 Debian 10 的代号。也许对某人有帮助。