在centos7.5使用DockerFile构建镜像时报错“Error parsing reference: "microsoft/dotnet:2.2-aspnetcore-runtime AS base" is not a valid repository/tag: invalid reference format”
运行dockerfile时报出的错误
FROM microsoft/dotnet:2.2-aspnetcore-runtime AS base
Error parsing reference: "microsoft/dotnet:2.2-aspnetcore-runtime AS base" is not a valid repository/tag: invalid reference format
这个问题一般是由docker的版本错误导致的
FROM microsoft/dotnet:2.2-aspnetcore-runtime AS base
,使用docker的新特性multi-stage build,该特性要求docker 17.05或更高版本。
我使用的服务器版本是centos 7.5 ,默认安装docker安装的docker 1.13.1版本
下面将docker更新到最新版本
删除已安装的docker版本 ~~~~
yum -y remove docker*
(不删除 /var/lib/docker 目录 就不会删除已安装的镜像及容器)
安装国内阿里云镜像
yum install -y yum-utils device-mapper-persistent-data lvm2 sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装最新版本的docker
yum install docker-ce
重启容器时发生错误
Unknown runtime specified docker-runc
运行如下指令解决
grep -rl 'docker-runc' /var/lib/docker/containers/ | xargs sed -i 's/docker-runc/runc/g'
systemctl restart docker