I'm running docker-registry inside a deployment with ingress setup (nginx-ingress), and I use cloudflare. I started getting issues when trying to push images larger then 1GB if a layer is bit larger then that I just get "Retrying in x", and it begins from 0. Strange enough pushing any layer below that threshold just passes without issue and push succeeds.
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: {{ .Values.name }}
annotations:
kubernetes.io/ingress.class: nginx
cert-manager.io/cluster-issuer: {{ .Values.certManager.name }}
nginx.ingress.kubernetes.io/force-ssl-redirect: "false"
nginx.ingress.kubernetes.io/ssl-redirect: "false"
nginx.org/client-max-body-size: "0"
nginx.ingress.kubernetes.io/proxy-buffering: "off"
nginx.ingress.kubernetes.io/proxy-http-version: "1.1"
nginx.ingress.kubernetes.io/proxy_ignore_headers: "X-Accel-Buffering"
nginx.ingress.kubernetes.io/connection-proxy-header: "keep-alive"
nginx.ingress.kubernetes.io/proxy-connect-timeout: "600"
nginx.ingress.kubernetes.io/proxy-send-timeout: "600"
nginx.ingress.kubernetes.io/proxy-read-timeout: "600"
nginx.ingress.kubernetes.io/proxy-next-upstream-timeout: "600"
nginx.ingress.kubernetes.io/proxy-next-upstream-tries: "10"
nginx.ingress.kubernetes.io/proxy-request-buffering: "off"
nginx.ingress.kubernetes.io/proxy-body-size: "8192m"
kubernetes.io/tls-acme: 'true'
nginx.ingress.kubernetes.io/configuration-snippet: |
more_set_headers "proxy_http_version 1.1";
more_set_headers "X-Forwarded-For $proxy_add_x_forwarded_for";
more_set_headers "Host $http_host";
more_set_headers "Upgrade $http_upgrade";
more_set_headers "Connection keep-alive";
more_set_headers "X-Real-IP $remote_addr";
more_set_headers "X-Forwarded-For $proxy_add_x_forwarded_for";
more_set_headers "X-Forwarded-Proto: https";
more_set_headers "X-Forwarded-Ssl on";
labels:
app: {{ .Values.name }}
spec:
tls:
- hosts: {{- range .Values.certificate.dnsNames }}
- {{ . }}
{{- end}}
secretName: {{ .Values.certificate.secretName }}
rules:
- host: {{ .Values.certManager.mainHost }}
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: {{ .Values.service.name }}
port:
number: {{ .Values.service.port }}
I want to be able to upload any size image as long as storage is available.