2024 年 docker 提示index.docker.io

发现 docker 提示以下错误:

复制代码
Error response from daemon: Get "https://index.docker.io/v1/search?q=nginx&n=25": dialing index.docker.io:443 container via direct connection because  has no HTTPS proxy: connecting to index.docker.io:443: dial tcp 96.44.137.28:443: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.

配置阿里源后还是报错,尝试 docker info 命令发现配置已经生效,但就是错。更换其它国内源清华源、网易源仍然不行。

最后发现目前很多 docker hub 都关闭了,阿里源也只能使用在阿里产品范围内。所以要解决这个问就得自己搭建个私有 docker hub。


搭建私有 Docker Hub 的步骤如下:

1. 准备环境

  • 服务器:Linux 。
  • Docker:安装 Docker。

2. 选择私有仓库工具

常用的私有 Docker 仓库工具包括:

  • Docker Registry:官方提供的轻量级工具。
  • Harbor:企业级工具,提供更多功能。

3. 使用 Docker Registry 搭建私有仓库

3.1 创建配置文件

创建 config.yml 文件,配置如下:

复制代码
version: 0.1
log:
  fields:
    service: registry
storage:
  filesystem:
    rootdirectory: /var/lib/registry
http:
  addr: :5000
  headers:
    X-Content-Type-Options: [nosniff]
health:
  storagedriver:
    enabled: true
    interval: 10s
    threshold: 3
3.2 启动 Docker Registry

使用以下命令启动:

复制代码
docker run -d \
  -p 5000:5000 \
  --name registry \
  -v $(pwd)/config.yml:/etc/docker/registry/config.yml \
  -v /var/lib/registry:/var/lib/registry \
  registry:2
3.3 测试私有仓库

推送镜像到私有仓库:

复制代码
docker tag my-image localhost:5000/my-image
docker push localhost:5000/my-image

拉取镜像:

复制代码
docker pull localhost:5000/my-image

4. 使用 Harbor 搭建私有仓库

4.1 下载 Harbor

从 Harbor GitHub 下载安装包并解压。

4.2 配置 Harbor

编辑 harbor.yml 文件,设置主机名、端口和数据存储路径。

4.3 安装 Harbor

运行安装脚本:

复制代码
sudo ./install.sh
4.4 访问 Harbor

通过浏览器访问 http://<your-hostname>,使用默认账户 admin 和密码 Harbor12345 登录。

4.5 推送和拉取镜像

推送镜像:

复制代码
docker tag my-image <your-harbor-host>/my-project/my-image
docker push <your-harbor-host>/my-project/my-image

拉取镜像:

复制代码
docker pull <your-harbor-host>/my-project/my-image

我是栈江湖,如果你喜欢此文章,不要忘记点赞+关注

相关推荐
运维全栈笔记1 小时前
K8S部署Redis高可用全攻略:1主2从3哨兵架构实战
redis·docker·云原生·容器·架构·kubernetes·bootstrap
SCBAiotAigc3 小时前
2026.5.1:`DockerDesktop must be owned by an elevated account`错误的解决办法
人工智能·docker·具身智能
身如柳絮随风扬10 小时前
使用 Docker 部署禅道并实现自动化部署——从项目搭建到运维自动化的完整指南
运维·docker·自动化
eRTE XFUN11 小时前
docker下搭建redis集群
redis·docker·容器
一只小bit11 小时前
Docker 存储卷:本地文件与容器内部文件建立绑定关系
运维·docker·容器
都在酒里11 小时前
在公共服务器上构建 RK3588 SDK 的纯净 Docker 方案
运维·服务器·docker
jeCA EURG12 小时前
docker离线安装及部署各类中间件(x86系统架构)
docker·中间件·系统架构
身如柳絮随风扬12 小时前
使用 Docker 部署 Jenkins 并实现自动化部署 —— 从零到一的 CI/CD 实践指南
docker·自动化·jenkins
就叫飞六吧12 小时前
docker快速启动sqlserver实例并自动测试shell脚本
docker·容器·sqlserver
皮皮冰燃1 天前
docker-18-WSL中安装docker并部署flask服务
docker·容器·flask