Kubernetes Volume SubPath

Gitlab 需要擁有/etc/gitlab的讀寫權限,但是其中的/etc/gitlab/gitlab.rb又希望存儲到kubernetes的configmp中;也就是說,需要給gitlab docker鏡像掛在一個/etc/gitlab 的volume,但是又需要在/etc/gitlab上掛在一個/etc/gitlab/gitlab.rb文件;只能使用subpath;

   apiVersion: apps/v1beta2
   kind: Deployment
   metadata:
     namespace: ci
     name: gitlab
   spec:
     selector:
       matchLabels:
         app: gitlab
     replicas: 1
     template:
       metadata:
         labels:
           app: gitlab
       spec:
         volumes:
         - name: data
           persistentVolumeClaim:
            claimName: gitlab
         - name: etc
           persistentVolumeClaim:
            claimName: gitlab-etc
         - name: gitlab-rb
           configMap:
             name: gitlab
             items:
             - key: gitlab.rb
               path: etc/gitlab/gitlab.rb
         containers:
         - name: gitlab
           image: gitlab/gitlab-ce:11.0.4-ce.0
           ports:
           - name: https
             containerPort: 443
           - name: http
             containerPort: 80
           - name: ssh
             containerPort: 22
           volumeMounts:
           - name: etc
             mountPath: /etc/gitlab
           - name: gitlab-rb
             mountPath: /etc/gitlab/gitlab.rb
             subPath: etc/gitlab/gitlab.rb
           - name: data
             mountPath: /var/opt/gitlab

kubernetes-subpath用法(把文件掛載在已存在的目錄下,不覆蓋原目錄)
kubernetes的configMap文件掛載不同的路徑且不覆蓋目錄的解決方法
kubernetes筆記: subpath

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章