繁体   English   中英

Gitlab注册表Docker推送因EOF而失败

[英]Gitlab Registry Docker push fails with EOF

所以我的问题是,当我尝试将docker映像推送到在gitlab上托管/运行的私有注册表时,推送将失败,并显示消息EOF。

除了通过反向代理连接,在Ubuntu 18.04上的版本11.4.7中还有一个标准gitlab实例。

docker push registry.example.com:4567/example/project

The push refers to repository [registry.example.com] b927422b59f7: Preparing 1c55a05eac35: Preparing 8152e12d6303: Preparing 4df94c231950: Preparing c8f2b48b3ca4: Preparing 7bdc16d52fc6: Layer already exists 0fff85bdf758: Layer already exists 70cda07214eb: Layer already exists c87a43e8244d: Layer already exists a13e2f0a9f03: Layer already exists d21349b545ee: Layer already exists 48dd4e2003bc: Layer already exists 94fb2e0cad4e: Layer already exists c368c3ebd80b: Layer already exists 004ac8bfdd61: Layer already exists 174adb00500f: Layer already exists cbc7d59da4b4: Layer already exists 22133acd47a9: Pushing [==================================================>] 50.48MB 7641974a4ba0: Layer already exists 314e9c11d1e2: Layer already exists 7630224de148: Layer already exists 7ecb4828cd35: Pushing [==================================================>] 80.18MB/80.18MB 3d26624ea56e: Layer already exists 2887f86eb343: Pushing [==================================================>] 13.47MB/13.47MB a4ace4ed0385: Layer already exists fd29e0f8792a: Retrying in 5 seconds 687dad24bb36: Pushing [==================================================>] 3.584kB 237472299760: Retrying in 7 seconds EOF

反向代理配置

server {
    listen 4567 ssl;
    access_log /var/log/nginx/registry_acces.log;
    error_log /var/log/nginx/registry_error.log;
    server_name gitlab.example.com
    client_max_body_size 0;
    proxy_max_temp_file_size 0;
    ssl_certificate /etc/letsencrypt/live/registry.example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/registry.example.com/privkey.pem;
    root /www/;

    location / {
            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-Forwarded-Proto http;

            proxy_cache off;
            proxy_buffering off;
            proxy_request_buffering off;
            proxy_http_version 1.1;
            proxy_pass http://10.1.1.15:4567;
    }

    error_page 497 301 =307 https://$host:$server_port$request_uri;

}

好吧,我搞砸了反向代理配置。

使用此配置,它可以正常工作。

server {
    listen *:4567;

    server_name  registry.example.com;

    server_tokens off;

    access_log /var/log/nginx/registry_acces.log;
    error_log /var/log/nginx/registry_error.log;

    ssl_certificate /etc/letsencrypt/live/registry.example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/registry.example.com/privkey.pem;
    root /www/;

    client_max_body_size 0;
    chunked_transfer_encoding on;

    ## Real IP Module Config
    ## http://nginx.org/en/docs/http/ngx_http_realip_module.htmly
    location / {

        proxy_set_header Host $http_host;
        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_read_timeout                  900;
        proxy_pass          http://10.1.1.15:4567;
  }


}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM