docker-registry如何在openshift源中持久保存图像

问题描述 投票:0回答:1

我是openshift / kubernetes / docker的新手,我想知道openshift源的docker注册表在哪里保留图像,知道这是:

1。在Docker注册表的部署的Yaml中,只有emptyDir卷声明

  volumes:
    - emptyDir: {}
      name: registry-storage

2。在部署了Pod的计算机中,我看不到使用的卷

docker volumes ls

3。即使我重新启动Pod,图像仍会保留

泊坞窗注册表部署的Yaml:

apiVersion: apps.openshift.io/v1
kind: DeploymentConfig
metadata:
  creationTimestamp: '2020-04-26T18:16:50Z'
  generation: 1
  labels:
    docker-registry: default
  name: docker-registry
  namespace: default
  resourceVersion: '1844231'
  selfLink: >-
    /apis/apps.openshift.io/v1/namespaces/default/deploymentconfigs/docker-registry
  uid: 1983153d-87ea-11ea-a4bc-fa163ee581f7
spec:
  replicas: 1
  revisionHistoryLimit: 10
  selector:
    docker-registry: default
  strategy:
    activeDeadlineSeconds: 21600
    resources: {}
    rollingParams:
      intervalSeconds: 1
      maxSurge: 25%
      maxUnavailable: 25%
      timeoutSeconds: 600
      updatePeriodSeconds: 1
    type: Rolling
  template:
    metadata:
      creationTimestamp: null
      labels:
        docker-registry: default
    spec:
      containers:
        - env:
            - name: REGISTRY_HTTP_ADDR
              value: ':5000'
            - name: REGISTRY_HTTP_NET
              value: tcp
            - name: REGISTRY_HTTP_SECRET
              value: 
            - name: REGISTRY_MIDDLEWARE_REPOSITORY_OPENSHIFT_ENFORCEQUOTA
              value: 'false'
            - name: OPENSHIFT_DEFAULT_REGISTRY
              value: 'docker-registry.default.svc:5000'
            - name: REGISTRY_HTTP_TLS_CERTIFICATE
              value: /etc/secrets/registry.crt
            - name: REGISTRY_OPENSHIFT_SERVER_ADDR
              value: 'docker-registry.default.svc:5000'
            - name: REGISTRY_HTTP_TLS_KEY
              value: /etc/secrets/registry.key
          image: 'docker.io/openshift/origin-docker-registry:v3.11'
          imagePullPolicy: IfNotPresent
          livenessProbe:
            failureThreshold: 3
            httpGet:
              path: /healthz
              port: 5000
              scheme: HTTPS
            initialDelaySeconds: 10
            periodSeconds: 10
            successThreshold: 1
            timeoutSeconds: 5
          name: registry
          ports:
            - containerPort: 5000
              protocol: TCP
          readinessProbe:
            failureThreshold: 3
            httpGet:
              path: /healthz
              port: 5000
              scheme: HTTPS
            periodSeconds: 10
            successThreshold: 1
            timeoutSeconds: 5
          resources:
            requests:
              cpu: 100m
              memory: 256Mi
          securityContext:
            privileged: false
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          volumeMounts:
            - mountPath: /registry
              name: registry-storage
            - mountPath: /etc/secrets
              name: registry-certificates
      dnsPolicy: ClusterFirst
      nodeSelector:
        node-role.kubernetes.io/infra: 'true'
      restartPolicy: Always
      schedulerName: default-scheduler
      securityContext: {}
      serviceAccount: registry
      serviceAccountName: registry
      terminationGracePeriodSeconds: 30
      volumes:
        - emptyDir: {}
          name: registry-storage
        - name: registry-certificates
          secret:
            defaultMode: 420
            secretName: registry-certificates
  test: false
  triggers:
    - type: ConfigChange
status:
  availableReplicas: 1
  conditions:
    - lastTransitionTime: '2020-04-26T18:17:12Z'
      lastUpdateTime: '2020-04-26T18:17:12Z'
      message: replication controller "docker-registry-1" successfully rolled out
      reason: NewReplicationControllerAvailable
      status: 'True'
      type: Progressing
    - lastTransitionTime: '2020-05-05T09:39:57Z'
      lastUpdateTime: '2020-05-05T09:39:57Z'
      message: Deployment config has minimum availability.
      status: 'True'
      type: Available
  details:
    causes:
      - type: ConfigChange
    message: config change
  latestVersion: 1
  observedGeneration: 1
  readyReplicas: 1
  replicas: 1
  unavailableReplicas: 0
  updatedReplicas: 1

重新启动:由于我正在使用部署,因此我只删除了pod并创建了一个新的pod

docker kubernetes docker-registry docker-volume openshift-origin
1个回答
0
投票
重新启动并不意味着数据已删除,它仍然存在于容器顶层,建议您从reading this开始使用。
© www.soinside.com 2019 - 2024. All rights reserved.