近期因为网络问题,可能会遇到下载docker镜像失败的情况,可以尝试以下二种方法,来解决无法下载镜像的问题
如果会终端命令操作,建议使用 方法二、使用阿里云docker仓库下载镜像,因为国内仓库下载速度快
方法一、改host文件指定域名的IP
如果拉取镜像遇到下面的错误:
docker: error pulling image configuration: Get https://production.cloudflare.docker.com/
registry-v2/docker/registry/v2/blobs/sha256/...... :
dial tcp202.160.129.6:443: /o timeout.
那么可能是docker域名 production.cloudflare.docker.com解析被污染了;
可以尝试ping下上面显示的那个IP,看下是否能ping通,比如上面显示的 202.160.129.6
解决方法
1. 获取被污染域名的实际IP地址
访问 https://www.ipaddress.com/ip-lookup 使用IP Lookup工具获得这个域名的IP地址。
找一个能ping通的ip,写入host文件中
2.修改系统的Hosts文件
打开在Hosts文件,在文件尾部插入新行,添加以下代码并保存
vi /etc/hosts
比如
104.16.100.215 production.cloudflare.docker.com
如果路由器直接修改host,在路由器中修改也是可以的
方法二、使用阿里云docker仓库下载镜像
1. 打开nas系统的ssh功能
由于不同系统打开的方法不一,请自行搜索nas系统打开ssh功能的方法;
注意:在使用完成后,请记得关闭SSH功能;开启了SSH之后,特别是如果对外网暴露了ssh的端口,是极其危险的;
2. ssh连上之后,下拉镜像
下载阿里云docker仓库中的镜像:
docker pull registry.cn-hangzhou.aliyuncs.com/mtphotos/mt-photos:latest
将镜像标记为Docker hub源,这样可以在图形化创建容器时使用
docker tag registry.cn-hangzhou.aliyuncs.com/mtphotos/mt-photos:latest mtphotos/mt-photos:latest
如果是群晖系统,需要先执行sudo -i ,使用root权限才能使用docker命令
3、返回图形化界面,更新容器
在Docker容器列表,点击MT Photos容器的【应用更新】;
如果没有更新按钮,点击Docker容器列表右上角的【基本视图】,切换到高级视图后,容器的版本那一列出现了【强制更新】按钮,点击强制更新按钮;
将mt-photos的镜像先停止,然后右键容器,然后点击【操作】=>【重置】; 等待容器容器重置完成后,启动容器;
注意:1、在DSM6.x版本中【重置】按钮为【清除】;2、请确认容器是基于latest标签创建的,其他标签是不会更新的;
在Containers中点击容器的名称打开Container details 点击顶部的Recreate按钮;点击Recreate
原创 MT Photos