gpt4 book ai didi

windows - 我应该在 Windows 2016 上使用 Docker EE 在 Windows 上使用哪些图像

转载 作者:行者123 更新时间:2023-12-02 21:07:49 33 4
gpt4 key购买 nike

一段时间以来,我一直在 Windows Docker 容器上开发和维护一些窗口,这些容器在 Windows 2016(使用 Docker EE)上运行 ASP.NET 核心应用程序。我计划将所有正在进行的更新/维护移交给服务器管理员,但我遇到了一个问题。当我开始时,我相信我使用的是 SAC 构建,但现在没有一个 SAC(或就此而言的 LTS)构建在 Windows 2016 上拉动,虽然我花了很多时间在谷歌上搜索,但这整件事似乎很重要簇。使用 Linux 上的 docker,我将只使用任何 LTS 发行版并在构建容器时应用更新。微软是否有明确的计划来做同样的事情?似乎他们错过了 docker 的重点。我想在 windows server 2016 中的 windows 容器上运行 windows,并且我想确保当我重新创建它时,我得到了最新的安全更新。

https://devblogs.microsoft.com/dotnet/net-core-container-images-now-published-to-microsoft-container-registry/

本页讨论了最近在 Docker 镜像中所做的重大更改,并具体说明了以下内容:

.NET Core images for Nano Server 2016 are still available on Docker Hub and MCR and will not be deleted. You can continue to use them but they are not supported and will not get new updates. If you need to do this and previously used manifest tags, like 1.1-sdk, you can now use the following MCR tags (Docker Hub variants are similar)



这是否意味着列出的新标签得到更新?我假设他们会用 LTS 而不是 SAC2016 来标记它,以更好地传达他们正在继续更新的概念。

这个页面似乎真的很有帮助,但列出的图像都没有拉到 windows server 2016 上:
https://andrewlock.net/exploring-the-net-core-mcr-docker-files-runtime-vs-aspnet-vs-sdk/

这是我尝试提取任何图像时得到的结果:
1709: Pulling from windows/nanoserver
no matching manifest for unknown in the manifest list entries

澄清一下,我目前可以使用以下图像运行我的所有应用程序:
mcr.microsoft.com/dotnet/core/runtime        2.2-nanoserver-sac2016   4a3bbafea836        3 months ago        1.27GB
mcr.microsoft.com/dotnet/core/sdk 2.2-nanoserver-sac2016 9773d80bdd64 3 months ago 2.62GB

我正在寻找对这些图像的支持的明确性,或更明确的迁移方向。

最佳答案

现在,对于 LTS,您要拉取的图像是:mcr.microsoft.com/dotnet/core/aspnet:2.1 .由于 2.1 是 ASP.NET Core 的 LTS 版本。老实说,底层服务器引用无关紧要,所有 .NET Core 镜像都是多架构的,因此会自动拉取正确的底层镜像(linux 用于 linux 主机,Windows 用于 Windows 主机,以及 AMD64、x86、ARM 等.)。

镜像的操作系统(除了是正确的架构和平台)真的有点毫无意义。它主要是一个翻译层。镜像不是虚拟机,操作系统在主机上,这就是您的安全补丁等适用的地方。只要你的主机被修补,你就很好。

更新

这显然导致了评论中的一些迂腐论点,所以让我更清楚一点。我在这里谈论的最好通过 graphic from the Docker site 来描述。 :

Containers vs. Virtual Machines

虚拟机在每个实例上都有操作系统的副本,而容器使用共享的主机操作系统。操作系统基础镜像基本上是一个代理。它提供 API,但操作系统级别的一切都发生在主机操作系统上,而不是容器中。

因此,是的,操作系统基础镜像在一定程度上很重要。您不能以 Linux 基础镜像为目标并部署到 Windows Server。您也会遇到针对 Windows Server 2019 和部署到 2016 的问题。但是,假设操作系统基础镜像与主机操作系统远程兼容,那么超出此范围的所有内容都毫无意义。

特别是关于补丁和 LTS 版本的讨论,您不需要关心,因为同样,实际运行的是主机操作系统的组件,而不是镜像本身的任何内容。如果您在主机操作系统上打开任务管理器,您实际上可以看到这一点。您将看到与每个正在运行的容器相关联的重复系统级进程。尽管容器也显示正在运行的进程,但实际上是这些主机级进程在执行工作,因此,修补和支持它们很重要。如果您的主机上一切正常,您不必担心容器,至少对于操作系统部分而言。

关于windows - 我应该在 Windows 2016 上使用 Docker EE 在 Windows 上使用哪些图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56795839/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com