我是Docker / Kubernetes世界的新手。
由于我刚开始使用整个架构,因此我有以下内容:
当使用Docker命令从我的机器构建.NetCore应用程序然后将其发布到注册表时,Kubernetes能够拉动并运行它,但是当图像由VSTS构建任务构建和推送时,kubernetes未能拉图像。在对错误进行了一些研究之后,结果发现来自VSTS构建的图像是针对窗口制作的,因此无法拉出。
适用于Windows和Linux的Docker Container之间的区别是什么?我们如何在构建映像时转换或指定类型。
答案 0 :(得分:2)
适用于Windows和Linux的Docker容器有什么区别。
简而言之,Linux docker在Linux上运行并与 Linux内核一起运行,Windows docker在Windows Server 2016或Windows 10上运行,使用 windows hyper virtualization ,并请求windows dll和其他软件包。
所以我们无法在Linux docker上运行windows docker镜像。
我们如何在构建图像时转换或指定类型。
据我所知,我们无法将泊坞窗图片转换为其他类型。
我们可以使用VSTS构建.NET核心Linux Docker镜像,请参阅此blog。
此外,我们可以使用不同的docker平台使用Docker file
来构建docker镜像。
有关如何使用docker文件构建Windows docker镜像的更多信息,请参阅此blog 有关如何使用docker文件构建Linux docker镜像的更多信息,请参阅此article。
创建泊坞窗图片后,我们可以从 Azure容器注册表跟踪此article到push
和pull
图片。