zoukankan      html  css  js  c++  java
  • 为 Docker 配置镜像加速器(解决 TLS handshake timeout 问题)

    问题

    当我们下载并安装完 Docker Desktop for Windows,运行 Docker 快速入门(一)- 情况介绍和安装 中的示例命令 docker run hello-world 时,可能会遇到如下的问题:

    PS C:UsersRimland> docker --version
    Docker version 19.03.8, build afacb8b
    
    PS C:UsersRimland> docker run hello-world
    Unable to find image 'hello-world:latest' locally
    C:Program FilesDockerDocker
    esourcesindocker.exe: Error response from daemon: Get https://registry-1.docker.io/v2/library/hello-world/manifests/latest: net/http: TLS handshake timeout.
    See 'C:Program FilesDockerDocker
    esourcesindocker.exe run --help'.
    

    docker-registry-timeout

    原因

    这是因为默认情况下 Docker 被配置为在 Docker Hub 上寻找镜像,Docker Hub 是一个任何人都可以使用的公共注册表,服务器远在海外,导致请求超时。

    解决方案

    配置镜像加速器,以提升获取 Docker 官方镜像的速度。

    镜像加速器有很多,我们使用阿里云的加速器来设置,操作步骤如下:

    1. 打开阿里云 容器镜像服务 ACR
    2. 点击“管理控制台”,登录阿里云账号(如果没有账号,需先注册一个)。
    3. 左侧菜单导航到“镜像中心” --> "镜像加速器",可以看到加速器地址及操作文档(有针对 Ubuntu、CentOS、Mac、Windows 各系统的操作文档)。

    针对安装了 Docker Desktop for Windows 的用户,可以参考以下配置步骤:

    在系统右下角 Docker 托盘图标右键弹出菜单选择 Settings,打开配置窗口后左侧导航菜单选择 Docker Engine。编辑窗口内的JSON串,填写下方加速器地址:

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

    如图:

    docker-registry-mirrors

    编辑完成后点击 Apply & Restart 按钮,等待 Docker 重启并应用配置的镜像加速器。

    再次运行命令 docker run hello-world 检查,已经运行正常了:

    docker-registry-ok


    作者 : 技术译民
    出品 : 技术译站

  • 相关阅读:
    迭代器
    闭包函数与装饰器
    pyhton的函数
    文件处理
    Python2和Python3编码的区别
    hdu5080:几何+polya计数(鞍山区域赛K题)
    hdu1695:数论+容斥
    HDU3564 --- Another LIS (线段树维护最值问题)
    hdu1521:排列组合---指数型母函数
    poj1014:母函数+优化
  • 原文地址:https://www.cnblogs.com/ittranslator/p/13195179.html
Copyright © 2011-2022 走看看