У меня есть экземпляр jenkins, созданный с использованием docker run -d -v /Users/dlovison/Documents/DockerVolumes/jenkins_home:/var/jenkins_home -p 8080:8080 -p 50000:50000 jenkins/jenkins:lts
, развернутый только в моей локальной среде
Я хотел бы подключиться к моему удаленному экземпляру openshift (openshift.com)
Я следовал руководствуhttp://v1.uncontained.io/playbooks/continuous_delivery/external-jenkins-integration.html и все шаги работают, за исключением случаев, когда мои локальные jenkins пытаются подключиться через jnlp
Ошибки:
Waiting for Pod to be scheduled (65/100): jenkins-slave-j8gmr-28v7x
Container is waiting jenkins-slave-j8gmr-28v7x [jnlp]: ContainerStateWaiting(message=Error response from daemon: create 110861e4dd42a6343dbd584f09a7967e714feb0155cf070aff167495c01ada39: error while creating volume path '/var/lib/docker/volumes/110861e4dd42a6343dbd584f09a7967e714feb0155cf070aff167495c01ada39/_data': mkdir /var/lib/docker/volumes/110861e4dd42a6343dbd584f09a7967e714feb0155cf070aff167495c01ada39: permission denied, reason=CreateContainerError, additionalProperties={})
Waiting for Pod to be scheduled (66/100): jenkins-slave-j8gmr-28v7x
Container is waiting jenkins-slave-j8gmr-28v7x [jnlp]: ContainerStateWaiting(message=Error response from daemon: create 110861e4dd42a6343dbd584f09a7967e714feb0155cf070aff167495c01ada39: error while creating volume path '/var/lib/docker/volumes/110861e4dd42a6343dbd584f09a7967e714feb0155cf070aff167495c01ada39/_data': mkdir /var/lib/docker/volumes/110861e4dd42a6343dbd584f09a7967e714feb0155cf070aff167495c01ada39: permission denied, reason=CreateContainerError, additionalProperties={})
Моя учетная запись службы содержит роль: 'admin'и 'edit'
Вот мой конвейер
apiVersion: v1
kind: BuildConfig
metadata:
name: sample-pipeline-v4
labels:
name: sample-pipeline-v4
spec:
strategy:
type: JenkinsPipeline
jenkinsPipelineStrategy:
env:
- name: "FOO"
value: "BAR"
jenkinsfile: |-
def label = "diego-pod-${UUID.randomUUID().toString()}"
podTemplate(label: label, containers: [
containerTemplate(name: 'maven', image: 'registry.access.redhat.com/openshift3/jenkins-slave-maven-rhel7', ttyEnabled: true, command: 'cat')
]) {
node(label) {
stage('Build a Maven project') {
git 'https://github.com/jenkinsci/kubernetes-plugin.git'
container('maven') {
sh 'mvn -B clean package'
}
}
}
}
У меня есть плагин https://github.com/openshift/jenkins-sync-plugin/, который выполняет всю тяжелую работу