[英]Docker fails to pull specified .NET SDK within Jenkins (SDK not found error)
我的解决方案托管在AWS上,显然他们在7月1日之前就切断了对.NET核心1.0的支持。
因此,我希望将我的.NET内核版本从1.0升级到2.1。 我能够直接部署到AWS(使用“sls deploy ...”)而没有问题,但是我通过Jenkins遇到了问题。
我的Jenkinsfile中的getCompileDockerImage()函数返回与2.1(2.1.507-sdk)兼容的SDK版本。
它包含以下代码:
def getCompileDockerImage()
{
return 'microsoft/dotnet:2.1.507-sdk'
}
但是,在docker运行“docker pull microsoft / dotnet:2.1.507-sdk”命令后,我收到以下消息:“来自守护程序的错误响应:microsoft / dotnet的清单:找不到2.1.507-sdk”。
我假设指定的SDK不可供Jenkins使用,但我不确定如何下载该版本。
我试图通过SSH连接到Master和Slave实例来尝试确定这些实例上安装的内容,但运行“dotnet --info”不会产生任何结果。
预期结果:Jenkins能够提取指定的SDK并构建解决方案实际结果:Jenkins无法提取指定的SDK
Microsoft对Docker镜像的工作方式进行了一些更改。 正式地说,他们现在都在微软自己的Azure容器注册表( mcr.microsoft.com
)上。 Docker Hub列表现在全部都在那里。 对于您的实际问题,.NET Core SDK映像现在位于mcr.microsoft.com/dotnet/core/sdk
,您为主要/次要版本设置了标记,即mcr.microsoft.com/dotnet/core/sdk:2.1
。 或者,具体来说,请mcr.microsoft.com/dotnet/core/sdk:2.1.507
。 但是,并非所有修订版本都可用,因此如果不起作用,请使用2.1
。 版本号无论如何都不应该是真的重要(即你应该总是使用最新版本,无论如何)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.