自建Docker仓库镜像
SRY-CTB
创建于: 2024-7-2 16:01
最后更新于: 2024-7-2 16:01
标签: 加速,教程
前言
最近,国内镜像站全军覆没!几周之前我在部署玩客云上 pull 镜像,但怎么都拉取不下来,我基本换了全网所有的国内镜像但都提示
error pulling image configuration XXXXX time out
,也是服了透顶,这也算给我的一个端午大惊喜了。那总不能现在歇菜吧,我又在Bing上开始搜索自建竟想办法,既然别人靠不住,那咱就靠自己了。嘿嘿,被我找到了。这个项目来自
https://github.com/dqzboy/Docker-Proxy
制备
一台国外服务器
一个域名
第一步
安装1panl面板
https://1panel.cn/
,官网文档有详细说明就不在这里解释了。如果你对linux很熟悉可以不需要,安装只是方便我们管理罢了。
第二步
我推荐安装1panel的原因,就在于他会自动安装docker无需更多操作。如果你没有使用面板,那么请自行安装docker。在服务器的任意位置新建一个文件夹,然后将仓库
https://github.com/dqzboy/Docker-Proxy/tree/main/config
目录下的所有文件,以及
https://github.com/dqzboy/Docker-Proxy/blob/main/docker-compose.yaml
全部下载到服务器文件夹下。(如下图)
第三步
在当前目录执行pull命令
docker compose up -d
第四步
到此为止,你对自建镜像就已经完成了,在docker管理页面可以看到这些容器,面板在50000,直接使用ip + 端口的方式访问。当然,为了方便你可以使用nignx进行反代。
第五步
因为我只需要Docker Hub的镜像,所以我仅对51000进行nignx反代,反代源文如下。如果需要其他的,在Github项目主页有详细的反代教程,自行查看。反代完成之后,修改服务器
/etc/docker/daemon.json
的配置,如下。

    if ($request_uri ~  ^/v2/([^/]+)/(manifests|blobs)/(.*)$) {
        # 重写路径并添加 library/
        rewrite ^/v2/(.*)$ /v2/library/$1 break;
    }
                        
    proxy_pass   http://localhost:51000;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;        
    proxy_set_header X-Nginx-Proxy true;
    proxy_buffering off;
    proxy_redirect off;
                                

    {
      "registry-mirrors": [ "https://hub.your_domain_name" ],
      "log-opts": {
      "max-size": "100m",
      "max-file": "5"
      }
    }
                                
注意
自建镜像建议仅限自己使用,不要公开使用。
大坑:手搓博客
前期
现状
© 2024 SRY_CTB
纯手工制造
本网站中的内容采用 CC BY-NC-SA 4.0 进行许可
苏ICP备2022020278号-1
萌ICP备20230191号
本站已经勉强运行:
SSL
支持IPV4
ZeroSSL