Nexus Helm图表的配置:HTTPS服务HTTP资源

时间:2018-11-25 22:36:04

标签: kubernetes nexus kubernetes-helm

我运行了以下命令:

kubectl create secret tls nexus-tls --cert cert.crt --key privateKey.pem

其中cert.crt包含我的证书,privateKey.pem包含我的私钥(使用CloudFlare提供)。

然后我使用以下配置安装了stable/sonatype-nexus Helm图表:

nexusProxy:
  env:
    nexusDockerHost: containers.<<NEXUS_HOST>>
    nexusHttpHost: nexus.<<NEXUS_HOST>>

nexusBackup:
  enabled: true
  nexusAdminPassword: <<PASSWORD>>
  env:
    targetBucket: gs://<<BACKUP_BUCKET_NAME>>
  persistence:
    storageClass: standard

ingress:
  enabled: true
  path: /*
  annotations:
    kubernetes.io/ingress.allow-http: true
    kubernetes.io/tls-acme: true
    kubernetes.io/ingress.class: gce
    kubernetes.io/ingress.global-static-ip-name: <<STATIC_IP_ADDRESS_NAME>>
  tls:
    enabled: true
    secretName: nexus-tls

persistence:
  storageClass: standard
  storageSize: 1024Gi

resources:
  requests:
    cpu: 250m
    memory: 4800Mi

通过运行以下命令:

helm install -f values.yaml stable/sonatype-nexus

此图表的可能配置值记录在here中。

访问http://nexus.<<NEXUS_HOST>>时,我可以访问Nexus存储库。但是,当我访问https://nexus.<<NEXUS_HOST>>时,会收到混合内容警告,因为正在提供HTTP资源。

如果我将nexusProxy.env.enforceHttps环境变量设置为true,则当我访问https://nexus.<<NEXUS_HOST>>时,我会收到如下响应:

HTTP access is disabled. Click here to browse Nexus securely: https://nexus.<<NEXUS_HOST>>.

如何确保Nexus的安全投放?我是否犯了配置错误,还是问题出在其他地方?

1 个答案:

答案 0 :(得分:0)

如果您的ELB提供纯HTTP流量,请将其添加到LoadBalancer服务注释中。

privateFunc()