Похоже, что в конфигурации вашего порта отсутствуют некоторые изменения.
Вам необходимо выставить порт 8082
в контейнере jcr
, который теперь является основным портом пользовательского интерфейса
Как только порт открыт, вы должны добавить этот порт к своей службе.
Таким образом, ваш пересмотренный yaml должен выглядеть примерно так (Deployment and Service):
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: jcr
namespace: <REDACTED>
spec:
replicas: 1
template:
metadata:
labels:
app: jcr
spec:
containers:
- name: jcr
image: docker.bintray.io/jfrog/artifactory-jcr:latest
ports:
- containerPort: 8081
- containerPort: 8082
volumeMounts:
- name: jcr-data
mountPath: /jcr-data
volumes:
- name: jcr-data
persistentVolumeClaim:
claimName: jcr-data
securityContext:
fsGroup: 2000
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: jcr-data
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
---
apiVersion: v1
kind: Service
metadata:
name: jcr
namespace: <REDACTED>
annotations:
prometheus.io/scrape: 'true'
prometheus.io/path: /
prometheus.io/port: '8081'
spec:
selector:
app: jcr
ports:
- port: 80
targetPort: 8082
- port: 8081
targetPort: 8081
sessionAffinity: None
type: ClusterIP
Обратите внимание, что я оставил 8081 открытым, что обеспечивает прямой доступ к Artifactory, если это необходимо для повышения производительности (теперь Artifactory работает за службой маршрутизатора).
ПРИМЕЧАНИЕ. - Я рекомендую использовать официальный Диаграмма JFrog Container Registry Helm , которая значительно упрощает процесс настройки и управления жизненным циклом развертывания JCR.