gpt4 book ai didi

.net - .net核心Web应用程序docker镜像如何在Mac OS上运行?

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

好的,我知道我在这里是个菜鸟,但我想带我去了解Docker ...我创建了一个简单的.net核心Web API应用程序,该应用程序返回一些数据。我在Windows中执行了此操作,并推送到gitlab,但是随后我可以在Mac上克隆并按预期运行正常...
然后,我创建一个包含以下内容的Dockerfile。

FROM mcr.microsoft.com/dotnet/core/sdk:3.1 AS build-env
WORKDIR /app

...

FROM mcr.microsoft.com/dotnet/core/aspnet:3.1
WORKDIR /app
据我了解,核心SDK是否包括小型Nano Server Windows OS?这是否意味着当我在Mac上使用 docker run时,它实际上在Windows上运行该应用程序-就像在Mac上的微型VM中一样?
如果这是正确的, docker 如何知道使用Windows nano服务器,而不是使用Linux镜像?
谢谢你的帮助

最佳答案

简短答案:
因为.NET Core是跨平台的。 docker可在Mac和Windows上运行(从理论上讲,它与Linux一样),该镜像在任何平台上都可以正常工作。
mcr.microsoft.com/dotnet/core/sdk:3.1与平台有关。根据您选择运行Docker的体系结构,它将选择Windows Nano服务器或Linux模板。
长答案:
Docker不是VM技术。这是一项Linux功能,可为您提供隔离的环境。在Windows和Mac上无法使用Docker。
Docker使用Linux功能并在Linux环境中插入应用程序(及其相关的依赖项),并创建了运行该应用程序所需的资源(网络,RAM,磁盘,软件框架)的幻觉。
在Windows和Mac上。 Docker安装了Linux VM。并在VM内部运行Docker infra。
docker info这样的命令将提供更多详细信息。下图显示了它正在Linux上运行。
enter image description here
切换到Windows docker将为docker info命令提供不同的输出。
enter image description here

关于.net - .net核心Web应用程序docker镜像如何在Mac OS上运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64197927/

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