Запуск nexus в кластере kubernetes с помощью helm

Для нексуса есть диаграмма штурвала: https://github.com/helm/charts/tree/master/stable/sonatype-nexus

Установил как с помощью helm:

helm install stable/sonatype-nexus --name=nexus

Но не получилось из-за нексуса-прокси. Есть логи для контейнера nexus-proxy:

[vert.x-eventloop-thread-0] [io.vertx.ext.web.impl.RoutingContextImplBase] Неожиданное исключение в маршруте

Итак, я начал гуглить и нашел это сообщение: https://github.com/travelaudience/nexus-proxy/issues/4

Здесь у нас нет ответа, кроме этого:

Я столкнулся с этой ошибкой. Использование imageTag = 2.2.0 устранило проблему для меня.

Итак, я удалил релиз nexus и установил эту диаграмму следующим образом:

helm install stable/sonatype-nexus --name=nexus -f nexus.yml

nexus.yml - это файл с замененным значением тега изображения nexus-proxy https://github.com/helm/charts/blob/master/stable/sonatype-nexus/values.yaml

Теперь, когда я нажимаю http://localhost:8080/, я получаю следующее:

Неверный хост. Чтобы просмотреть Nexus, щелкните здесь /. Чтобы использовать реестр Docker, укажите своего клиента на.

Тадаам, что я сделал не так? Я пытаюсь установить эту диаграмму в свой кубернет на Mac. У меня не получилось установить эту диаграмму на GKE


person Alexander Kondaurov    schedule 11.09.2018    source источник


Ответы (3)


Я столкнулся с той же проблемой с вами (в stable / sonatype-nexus-1.10.0), и я попытался ее решить. Я предполагаю, что ваша проблема связана с изображениями докеров, такими как quay.io/travelaudience/docker-nexus-proxy. Вы можете увидеть конфигурацию в values.yaml, например

nexusProxy:
  imageName: quay.io/travelaudience/docker-nexus-proxy
  imageTag: 2.3.0
  imagePullPolicy: IfNotPresent
  port: 8080
  env:
    nexusDockerHost: 127.0.0.1
    nexusHttpHost: 127.0.0.1
    enforceHttps: false
    cloudIamAuthEnabled: false

По умолчанию nexusDockerHost и nexusHttpHost оставлены пустыми, поэтому прокси откажет вам в доступе к nexus. чтобы разрешить доступ к нексусу через docker-nexus-proxy. В моем случае, после добавления 127.0.0.1 в nexusDockerHost / nexusHttpHost, я мог получить доступ к пользовательскому интерфейсу nexus из конфигурации nodeport диаграммы.

person Hawk Ista    schedule 04.10.2018
comment
Я добавил 127.0.0.1, это не сработало, после этого я добавил свой IP-адрес сервера, и теперь он работает. Спасибо. - person Saman; 13.06.2019
comment
@Saman, не могли бы вы посоветовать, какой IP-адрес сервера вы добавили и который работал? Я также пробовал с 127.0.0.1, и это не сработало. IP-адрес сервера означает, что когда мы делаем kubectl get svc, и IP-адрес, который мы получаем как ip-адрес службы балансировки нагрузки, является ли он единственным? Спасибо. - person Jaydeep Soni; 17.01.2020
comment
@JaydeepSoni, извините за поздний ответ, не видел. Я поместил IP-адрес kubemaster, на котором работала нексус, на одном поде / порте. Надеюсь поможет. - person Saman; 04.04.2020
comment
Я изменил yaml Значения, чтобы добавить 127.0.0.1 для переменных dockerHost / httpHost env. Я вижу эту ошибку при установке диаграммы. Ошибка: Ingress.extensions nexus-chart-1-sonatype-nexus недействителен: [spec.rules [0] .host: недопустимое значение: 127.0.0.1: должно быть DNS-имя, не IP-адрес, spec.rules [1] .host: недопустимое значение: 127.0.0.1: должно быть DNS-имя, а не IP-адрес] - person Sunny; 27.05.2020

Сработало у меня! Он создал еще один ReplicaSet, и мне пришлось удалить исходный, чтобы избежать сбоя проверки работоспособности в новом модуле, но затем он работал правильно.

person Xavi    schedule 19.09.2019

Я исправил это с помощью следующего изменения, похоже, это проблема с портом, я развернул на AWS EKS private

nexusProxy:
  enabled: true
  # svcName: proxy-svc
  imageName: quay.io/travelaudience/docker-nexus-proxy
  imageTag: 2.6.0
  imagePullPolicy: IfNotPresent
  port: 8080
  targetPort: 8080

изменение

nexusProxy:
  enabled: true
  # svcName: proxy-svc
  imageName: quay.io/travelaudience/docker-nexus-proxy
  imageTag: 2.6.0
  imagePullPolicy: IfNotPresent
  port: 8080
  targetPort: 8081

Только смени порт с 8080 на 8081

person Noman Sadiq    schedule 19.09.2020