Docker拉取官方镜像源

关于Docker拉取官方镜像源

继去年Docker Hub被不知名原因封锁后,导致各大NAS(网络附属存储)的镜像库或注册表都无法使用,不能直接呈现列表。只能使用国内其他的镜像源下载镜像,虽说也可以下载,但是国内大部分镜像源的镜像版本都很低,一些小的镜像源甚至都找不到。一部分博主的解决方法是使用第三方克隆自docker hub的镜像库,或者使用加速服务等。这些方法普遍有一个问题就是:不稳定,某些小项目镜像更新不及时或者还是根本找不到。那么我这里提供一个解决方案:使用代理直接拉取Docker Hub的镜像。

代理选择

首先这里我使用小猫的windos程序作为代理服务器 你也可以使用其他的 只需要有代理地址即可

在设置中打开局域网链接开关

这样同一局域网内的设备可以通过设置代理地址为:本主机ip地址+端口

我这里电脑的IP为:192.168.0.104

小猫代理端口为:7890

Docker设置代理

/etc/systemd/system/docker.service.d/ 目录下创建代理配置文件(如果没有这个目录,可以先创建)

linux 复制代码
sudo mkdir -p /etc/systemd/system/docker.service.d/
sudo nano /etc/systemd/system/docker.service.d/http-proxy.conf

添加如下内容:

linux 复制代码
[Service]
Environment="HTTP_PROXY=http://192.168.0.104:7890"
Environment="HTTPS_PROXY=http://192.168.0.104:7890"
Environment="NO_PROXY=localhost,127.0.0.1"

保存后,重新加载 systemd 配置并重启 Docker 服务:

linux 复制代码
sudo systemctl daemon-reload
sudo systemctl restart docker

重启后即可正常拉取镜像

这时在小猫的连接列表可以看到是从官方镜像源仓库拉取的镜像

关于Docker设置代理踩的坑

一开始一直编辑/etc/docker/daemon.json 添加如下代理:

linux 复制代码
{  
 "proxies": {  
 "http-proxy": "http://:",  
 "https-proxy": "http://:",  
 "no-proxy": "localhost,127.0.0.1"  
 }  
}

这个配置是修改容器内环境变量的,和docker pull无关 所以不要再编辑这个配置文件了

相关推荐
大佐不会说日语~8 小时前
使用Docker Compose 部署时网络冲突问题排查与解决
运维·网络·spring boot·docker·容器
小徐敲java10 小时前
(运维)1Panel服务器面板Docker部署
运维·服务器·docker
曾几何时`12 小时前
Docker容器化部署编译运行模块
运维·docker·容器
Suchadar14 小时前
Docker基础命令(二)——数据卷管理端口映射与容器互联
运维·docker·容器
firstacui14 小时前
Docker容器网络管理与容器数据卷管理
运维·docker·容器
codeRichLife16 小时前
docker拷贝,导入/导出等常用命令
docker
lpruoyu17 小时前
【Docker进阶-01】Docker隔离原理与可视化界面-Portainer
docker
Swift社区18 小时前
Docker 构建 Python FastAPI 镜像最佳实践
python·docker·fastapi
API开发18 小时前
CentOS 单独安装Docker Compose v2
linux·docker·centos·docker compose
hwj运维之路18 小时前
Docker面试题汇总系列
运维·docker·云原生·容器