| # debian.sh --arch 'amd64' out/ 'trixie' '@1781049600' |
| SHELL [/bin/bash -e -u -o pipefail -c] |
| ARG user=jenkins |
| ARG group=jenkins |
| ARG uid=1000 |
| ARG gid=1000 |
| RUN |4 user=jenkins group=jenkins uid=1000 gid=1000 /bin/bash -e -u -o pipefail -c groupadd -g "${gid}" "${group}" && useradd -l -c "Jenkins user" -d /home/"${user}" -u "${uid}" -g "${gid}" -m "${user}" || echo "user ${user} already exists." # buildkit |
| ARG AGENT_WORKDIR=/home/jenkins/agent |
| ENV TZ=Etc/UTC |
| RUN |5 user=jenkins group=jenkins uid=1000 gid=1000 AGENT_WORKDIR=/home/jenkins/agent /bin/bash -e -u -o pipefail -c apt-get update && apt-get --yes --no-install-recommends install ca-certificates curl fontconfig git less netbase openssh-client patch tzdata && apt-get clean && rm -rf /tmp/* /var/cache/* /var/lib/apt/lists/* # buildkit |
| ARG VERSION=3383.vc8881d4b_0e76 |
| ADD --chown=jenkins:jenkins https://repo.jenkins-ci.org/public/org/jenkins-ci/main/remoting/3383.vc8881d4b_0e76/remoting-3383.vc8881d4b_0e76.jar /usr/share/jenkins/agent.jar # buildkit |
| RUN |6 user=jenkins group=jenkins uid=1000 gid=1000 AGENT_WORKDIR=/home/jenkins/agent VERSION=3383.vc8881d4b_0e76 /bin/bash -e -u -o pipefail -c chmod 0644 /usr/share/jenkins/agent.jar && ln -sf /usr/share/jenkins/agent.jar /usr/share/jenkins/slave.jar # buildkit |
| ARG GIT_LFS_VERSION=3.7.1 |
| RUN |7 user=jenkins group=jenkins uid=1000 gid=1000 AGENT_WORKDIR=/home/jenkins/agent VERSION=3383.vc8881d4b_0e76 GIT_LFS_VERSION=3.7.1 /bin/bash -e -u -o pipefail -c arch=$(uname -m | sed -e 's/x86_64/amd64/g' -e 's/aarch64/arm64/g' -e 's/armv7l/arm/g') && curl -L -s -o git-lfs.tgz "https://github.com/git-lfs/git-lfs/releases/download/v${GIT_LFS_VERSION}/git-lfs-linux-${arch}-v${GIT_LFS_VERSION}.tar.gz" && tar xzf git-lfs.tgz && bash git-lfs-*/install.sh && git lfs install --skip-repo --system && rm -rf git-lfs* # buildkit |
| ENV LANG=C.UTF-8 |
| ENV JAVA_HOME=/opt/java/openjdk |
| COPY /javaruntime /opt/java/openjdk # buildkit |
| ENV PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
| USER jenkins |
| ENV AGENT_WORKDIR=/home/jenkins/agent |
| RUN |7 user=jenkins group=jenkins uid=1000 gid=1000 AGENT_WORKDIR=/home/jenkins/agent VERSION=3383.vc8881d4b_0e76 GIT_LFS_VERSION=3.7.1 /bin/bash -e -u -o pipefail -c mkdir -p /home/"${user}"/.jenkins && mkdir -p "${AGENT_WORKDIR}" # buildkit |
| VOLUME [/home/jenkins/.jenkins] |
| VOLUME [/home/jenkins/agent] |
| WORKDIR /home/jenkins |
| ENV USER=jenkins |
| LABEL org.opencontainers.image.vendor=Jenkins project org.opencontainers.image.title=Official Jenkins Agent Base Docker image org.opencontainers.image.description=This is a base image, which provides the Jenkins agent executable (agent.jar) org.opencontainers.image.version=3383.vc8881d4b_0e76 org.opencontainers.image.url=https://www.jenkins.io/ org.opencontainers.image.source=https://github.com/jenkinsci/docker-agents org.opencontainers.image.licenses=MIT |
| ARG user=jenkins |
| USER root |
| COPY ../../jenkins-agent /usr/local/bin/jenkins-agent # buildkit |
| RUN |7 user=jenkins group=jenkins uid=1000 gid=1000 AGENT_WORKDIR=/home/jenkins/agent VERSION=3383.vc8881d4b_0e76 GIT_LFS_VERSION=3.7.1 /bin/bash -e -u -o pipefail -c chmod +x /usr/local/bin/jenkins-agent && ln -s /usr/local/bin/jenkins-agent /usr/local/bin/jenkins-slave # buildkit |
| USER jenkins |
| LABEL org.opencontainers.image.vendor=Jenkins project org.opencontainers.image.title=Official Jenkins Inbound Agent Base Docker image org.opencontainers.image.description=This is an image for Jenkins agents using TCP or WebSockets to establish inbound connection to the Jenkins controller org.opencontainers.image.version=3383.vc8881d4b_0e76 org.opencontainers.image.url=https://www.jenkins.io/ org.opencontainers.image.source=https://github.com/jenkinsci/docker-agents org.opencontainers.image.licenses=MIT |
| ENTRYPOINT ["/usr/local/bin/jenkins-agent"] |
| USER root |
| COPY /kaniko /kaniko # buildkit |
| RUN /bin/bash -e -u -o pipefail -c chown -R jenkins:jenkins /kaniko # buildkit |
| ENV PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/kaniko |
| ENV DOCKER_CONFIG=/kaniko/.docker |
| USER jenkins |