Сбой docker в частный реестр Docker внутри кластера Kubernetes завершается неудачно: 413 Request Entity Too Large - PullRequest
0 голосов
/ 18 марта 2019

Я развернул частный реестр Docker (образ registry:2) в кластере Kubernetes и выставил его через Ingress.Я использую nginxinc/kubernetes-ingress (не: kubernetes/ingress-nginx) Входной контроллер NGINX .

curl https://my_registry/v2/_catalog работает нормально.Но docker push в реестр сталкивается с этой ошибкой: Pushing ... 100.6MB/100.6MB ... 413 Request Entity Too Large.

Насколько я знаю, это можно смягчить, указав контроллеру NGINX ingres:принимать большие куски данных.Например, я попытался добавить аннотацию nginx.ingress.kubernetes.io/proxy-body-size: "200m" в мою спецификацию Ingress (как предложено здесь ), но пока это не сработало.

Так каков правильный способ проинструктироватьnginxinc/kubernetes-ingress Входной контроллер NGINX для приема достаточно больших кусков?

ОБНОВЛЕНИЕ Тем временем пришел к выводу , что nginxinc/kubernetes-ingress не берет свою конфигурацию из аннотаций, а изConfigMap с именем nginx-config, который находится в том же пространстве имен, что и входной контроллер NGINX.Я сейчас добавил ConfigMap с data client-max-body-size: "200m", но проблема все еще сохраняется.

Ответы [ 2 ]

2 голосов
/ 27 марта 2019

Я переключился с NGINX Inc. на Kubernetes ' NGINX, и там добавление следующей аннотации к Ingress' metadata оказалось достаточным:

annotations:
  nginx.ingress.kubernetes.io/proxy-body-size: 500m
2 голосов
/ 18 марта 2019

Вам необходимо установить Аннотация:

nginx.org/client-max-body-size "200m"
...