mkdir /opt/jenkins && cd /opt/jenkins
FROM jenkins/jenkins:2.263.4-lts-jdk11
USER root
RUN apt-get update && apt-get install -y apt-transport-https \
ca-certificates curl gnupg2 \
software-properties-common
RUN curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -
RUN apt-key fingerprint 0EBFCD88
RUN add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/debian \
$(lsb_release -cs) stable"
RUN apt-get update && apt-get install -y docker-ce-cli
USER jenkins
RUN jenkins-plugin-cli --plugins blueocean:1.24.4
docker build -t jenkins:2.263.4-lts-jdk11-blueocean .
services:
jenkins:
# 如果无需预装 Blue Ocean 插件,可以直接使用官方镜像
image: 'jenkins:2.263.4-lts-jdk11-blueocean'
restart: always
environment:
DOCKER_HOST: 'tcp://docker:2376'
ports:
- '80:8080'
- '50000:50000'
volumes:
- '/data/jenkins/certs:/certs/client:ro'
- '/data/jenkins/home:/var/jenkins_home'
links:
- "dind:docker"
dind:
image: 'docker:dind'
restart: always
environment:
DOCKER_TLS_CERTDIR: '/certs'
ports:
- '2376:2376'
volumes:
- '/data/jenkins/certs:/certs/client'
- '/data/jenkins/home:/var/jenkins_home'
privileged: true
mkdir -p /opt/jenkins/home
chown 1000:1000 /opt/jenkins/home
cat /data/jenkins/home/secrets/initialAdminPassword
如何配置gitlab webhook触发流水线执行
gitlabBranch
gitlabSourceBranch
gitlabActionType
gitlabUserName
gitlabUserUsername
gitlabUserEmail
gitlabSourceRepoHomepage
gitlabSourceRepoName
gitlabSourceNamespace
gitlabSourceRepoURL
gitlabSourceRepoSshUrl
gitlabSourceRepoHttpUrl
gitlabMergeRequestTitle
gitlabMergeRequestDescription
gitlabMergeRequestId
gitlabMergeRequestIid
gitlabMergeRequestState
gitlabMergedByUser
gitlabMergeRequestAssignee
gitlabMergeRequestLastCommit
gitlabMergeRequestTargetProjectId
gitlabTargetBranch
gitlabTargetRepoName
gitlabTargetNamespace
gitlabTargetRepoSshUrl
gitlabTargetRepoHttpUrl
gitlabBefore
gitlabAfter
gitlabTriggerPhrase