使用带认证私有Registry URL启动Docker容器提示invalid reference format
解决Docker run命令"invalid reference format"错误
你遇到的错误是因为Docker镜像引用格式不符合规范,不能在镜像地址里添加https://前缀,也不能直接将用户名密码嵌入地址中。正确的操作步骤如下:
1. 先登录私有Docker仓库
Docker的认证信息需要通过docker login命令来处理,而不是直接写在镜像地址里:
sudo docker login myregistry.mydomain.io:myport -u mylogin -p mypass
如果不想在命令行明文输入密码,可以省略-p mypass,执行后会提示你输入密码。
2. 使用正确的镜像地址启动容器
登录成功后,直接使用不带协议前缀的镜像引用格式执行docker run:
sudo docker run -it myregistry.mydomain.io:myport/myimage:latest
补充说明
Docker镜像引用的标准格式为:[私有仓库地址:端口]/[镜像名]:[标签],不需要添加http://或https://前缀。私有仓库的认证信息会被Docker保存在本地的~/.docker/config.json文件中,后续拉取、运行该仓库的镜像时会自动使用这些认证信息。
内容的提问来源于stack exchange,提问作者user18928007
相关产品推荐
相关产品推荐

