運行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