在执行Dockerfile时出现Get https://registry-1.docker.io/v2/错误的解决方案

1.在IDEA中建立好了SpringBoot项目,并配置好了docker容器,然后在执行Dockerfile时出现以下问题
Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

本人的Dockerfile文件如下:

 FROM openjdk:8-jdk-alpine VOLUME /tmp ADD ../../../target/demo-0.0.1-SNAPSHOT.jar demo-1.0.0.jar #RUN bash -c "touch /demo-1.0.0.jar" EXPOSE 8080 ENTRYPOINT ["java","-jar","demo-1.0.0.jar"] 这里说明在执行第一个命令时就出现了问题,有两种原因:

(1)本身网速太慢,无法下载;
(2)在Docker容器中配置的镜像有误,或镜像太水,比如下面两款镜像,分别是阿里云和中科院的
中科院的镜像

  {         "registry-mirrors":["https://docker.mirrors.ustc.edu.cn"]     }

阿里云的镜像

{  "registry-mirrors":["https://6kx4zyno.mirror.aliyuncs.com"] }

2.在ubuntu中依次执行以下命令:
2.1 创建daemon.json文件,并将上面的镜像复制粘贴进去

sudo vim /etc/docker/daemon.json

2.2 重启docker

systemctl daemon-reload  systemctl restart docker

发表评论