如何在docker中为docker启用Kubernetes上的持久卷?

问题描述

为了加快在kubernetes上构建docker的速度,我想启用持久卷 我尝试过:

apiVersion: v1
kind: Pod
Metadata:
  name: docker-build
spec:
  volumes:
  - name: dind-storage
    # emptyDir: {}                    # that's how it works
    persistentVolumeClaim:            # so it doesn't work
      claimName: "jenkinslibdocker"    
  containers:
  - name: docker
    image: docker:19.03.3-git
    command:
    - cat
    tty: true
    env:
    - name: DOCKER_HOST
      value: tcp://localhost:2375
  - name: dind
    image: docker:19.03.3-dind
    securityContext:
      privileged: true
    env:
    - name: DOCKER_TLS_CERTDIR
      value: ''
    args:
    - "--mtu=1440"
    volumeMounts:
      - name: dind-storage
        mountPath: /var/lib/docker

我创建了广告连播:

kubectl create -f test2.yaml

和pvc:

kubectl create -f pvc.yaml



apiVersion: v1
kind: PersistentVolumeClaim
Metadata:
  name: jenkinslibdocker
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 10Gi
  storageClassName: nfs-client
  volumeMode: Filesystem

输入窗格:

kubectl exec -it docker-build -c docker sh

尝试构建任何东西

docker build https://github.com/liejuntao001/docker_doxygen.git --build-arg BUILDKIT_INLINE_CACHE=1 --tag baibai/doxygen:latest --cache-from baibai/doxygen:latest

我得到错误: 无法注册图层:不支持操作

如果我禁用永久卷,它将起作用

有什么主意吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...