Модуль, работающий в рабочем узле EKS, не может получить доступ к демону Docker - PullRequest
1 голос
/ 18 мая 2019

У меня есть изображение jenkins-slave, в котором я добавил jenkins в группу докеров

RUN usermod -aG docker jenkins

И затем я использую это изображение в работе следующим образом

podTemplate(label: 'builder-pod-startclust', cloud: 'kubernetes', containers: [
    containerTemplate(
            name: 'jnlp',
            image: "${artifact_repo}/jenkins-slave:ekslave",
            ttyEnabled: true,
            privileged: true,
            alwaysPullImage: true,
            workingDir: '/var/jenkins_home',
            resourceRequestCpu: '1000m',
            resourceRequestMemory: '1Gi',
            resourceLimitMemory: '1.1Gi',
    )
], volumes: [hostPathVolume(mountPath: '/var/run', hostPath: '/var/run')],
   annotations: [
                podAnnotation(key: 'iam.amazonaws.com/role', value: 'arn:aws:iam::XXXXXXXX:role/kube2iam-role')
        ]) { //podtemplate

Однако,при запуске команд докера, например, docker version, в модуле jenkins-slave возникают проблемы с правами доступа

Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.39/version: dial unix /var/run/docker.sock: connect: permission denied

Мастер yenl jenkins выглядит следующим образом

containers:
      - name: jenkins-container
        image: $artifact_repo/jenkins:latest
...

     volumeMounts:
              - mountPath: /var/run
                name: docker-sock
...