logo NodeSeekbeta

纯Nginx加速Docker镜像

记得之前有看网友发过docker registry搭建私人docker加速镜像的,不过这样做首先要装docker,还要拉取docker registry,最关键的是加速的仓库机器还要缓存文件。Nginx的加速相对来说简单一点了,直接上配置,其中示例域名换成自己的,SSL证书自行替换

server {
    server_name speedup.docker.com;

    listen 443 ssl;
    ssl_certificate /etc/letsencrypt/live/speedup.docker.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/speedup.docker.com/privkey.pem;
    include /etc/letsencrypt/options-ssl-nginx.conf;
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;

 
    location / {
        proxy_pass https://registry-1.docker.io;  
        proxy_set_header Host registry-1.docker.io;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;               
        proxy_buffering off;
        proxy_set_header Authorization $http_authorization;
        proxy_pass_header  Authorization;
        proxy_intercept_errors on;
        recursive_error_pages on;
        error_page 301 302 307 = @handle_redirect;
    }
    location @handle_redirect {
        resolver 1.1.1.1;
        set $saved_redirect_location '$upstream_http_location';
        proxy_pass $saved_redirect_location;
    }
} 
server {
    if ($host = speedup.docker.com) {
        return 301 https://$host$request_uri;
    }

    listen 80;
    server_name speedup.docker.com;
    return 404;
}
  • @ixinshang #5 其实能做鉴权、控制流量、控制时间的,复杂的要外置lua脚本了

  • 有个docker反代项目可以直接拉11个仓库的镜像,那个适应性还是广一点

  • @scarlett #1 看实际情况吧,我用来加速的机器硬盘就3g

  • 直接用Cloudflare Workers搭建就行,省一台小鸡

  • @scarlett #1 我最开始也是用纯nginx加速,后来才换成那个docker项目的

  • 能push吗或者登录账号

  • 这个nginx反代如何防止被扫到盗刷呢

  • @zishou #6 做简单的就是加一个简单的密码校验

你好啊,陌生人!

我的朋友,看起来你是新来的,如果想参与到讨论中,点击下面的按钮!

📈用户数目📈

目前论坛共有73243位seeker

🎉欢迎新用户🎉