2023-01-13:joxit/docker-registry-ui是registry的web界面工具之一

2023-01-13:joxit/docker-registry-ui是registry的web界面工具之一。请问部署在k3s中,yaml如何写?

答案2023-01-13:

yaml如下:

apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: docker-registry-ui
  name: docker-registry-ui
  namespace: droneci
spec:
  replicas: 1
  selector:
    matchLabels:
      app: docker-registry-ui
  template:
    metadata:
      labels:
        app: docker-registry-ui
    spec:
      containers:
        - env:
            - name: "DELETE_IMAGES"
              value: "true"
            - name: "REGISTRY_TITLE"
              value: "Docker registry UI"
            # - name: "REGISTRY_URL"
            #   value: "http://registry:5000"
            - name: NGINX_PROXY_PASS_URL
              value: "http://registry:5000"
            - name: PULL_URL
              value: "docker-registry-ui:80"
            - name: SINGLE_REGISTRY
              value: "true"
          image: "joxit/docker-registry-ui:latest"
          imagePullPolicy: IfNotPresent
          name: docker-registry-ui
          securityContext:
            privileged: true
---
apiVersion: v1
kind: Service
metadata:
  labels:
    app: docker-registry-ui
  name: docker-registry-ui
  namespace: droneci
spec:
  ports:
    - port: 80
      protocol: TCP
      targetPort: 80
  selector:
    app: docker-registry-ui
  type: NodePort

---
apiVersion: v1
kind: ConfigMap
metadata:
  labels:
    app: registry
  name: registry
  namespace: droneci
data:
  config.yml: |
    version: 0.1
    log:
      fields:
        service: registry
    storage:
      cache:
        blobdescriptor: inmemory
      filesystem:
        rootdirectory: /var/lib/registry
    http:
      addr: :5000
      headers:
        X-Content-Type-Options: ['*']
        Access-Control-Allow-Origin: ['*']
        Access-Control-Allow-Methods: ['*']
    health:
      storagedriver:
        enabled: true
        interval: 10s
        threshold: 3

---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: registry
  namespace: droneci
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
spec:
  rules:
    - host: dockergit.dsy.com
      http:
        paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: registry
                port:
                  number: 5000
---
apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: registry
  name: registry
  namespace: droneci
spec:
  replicas: 1
  selector:
    matchLabels:
      app: registry
  template:
    metadata:
      labels:
        app: registry
    spec:
      containers:
        - image: "registry"
          imagePullPolicy: IfNotPresent
          name: registry
          volumeMounts:
            - mountPath: /var/lib/registry
              name: volv
            - mountPath: /etc/docker/registry/config.yml
              subPath: config.yml
              name: volv2
      volumes:
        - hostPath:
            path: /root/k8s/droneci/registry/var/lib/registry
            type: DirectoryOrCreate
          name: volv
        - configMap:
            name: registry
          name: volv2
---
apiVersion: v1
kind: Service
metadata:
  labels:
    app: registry
  name: registry
  namespace: droneci
spec:
  ports:
    - port: 5000
      nodePort: 50000
      protocol: TCP
      targetPort: 5000
  selector:
    app: registry
  type: NodePort

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本作品采用《CC 协议》,转载必须注明作者和本文链接
微信公众号:福大大架构师每日一题。最新面试题,涉及golang,rust,mysql,redis,云原生,算法,分布式,网络,操作系统。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!