Personal Projects - Andreas

jenkins-ssh-docker-agent (alpine)

Published 2025-06-26 15:20:11 +02:00 by jenkins in andreas-personal/jenkins-ssh-docker-agent

Installation

docker pull gitea.fahrecker.com/andreas-personal/jenkins-ssh-docker-agent:alpine
sha256:779c85dc468cacb401122464388a66c88f002651372ea79aa52ca7a3e422b82f

About this package

A Jenkins agent image which allows using SSH to establish the connection

Image Layers

ADD alpine-minirootfs-3.22.0-x86_64.tar.gz / # buildkit
CMD ["/bin/sh"]
ARG user=jenkins
ARG group=jenkins
ARG uid=1000
ARG gid=1000
ARG JENKINS_AGENT_HOME=/home/jenkins
ENV JENKINS_AGENT_HOME=/home/jenkins
ARG AGENT_WORKDIR=/home/jenkins/agent
ENV AGENT_WORKDIR=/home/jenkins/agent
RUN |6 user=jenkins group=jenkins uid=1000 gid=1000 JENKINS_AGENT_HOME=/home/jenkins AGENT_WORKDIR=/home/jenkins/agent /bin/sh -c addgroup -g "${gid}" "${group}" && adduser -h "${JENKINS_AGENT_HOME}" -u "${uid}" -G "${group}" -s /bin/bash -D "${user}" && passwd -u "${user}" && mkdir -p "${JENKINS_AGENT_HOME}/.ssh/" "${JENKINS_AGENT_HOME}/.jenkins/" "${AGENT_WORKDIR}" && chown -R "${uid}":"${gid}" "${JENKINS_AGENT_HOME}" "${AGENT_WORKDIR}" # buildkit
RUN |6 user=jenkins group=jenkins uid=1000 gid=1000 JENKINS_AGENT_HOME=/home/jenkins AGENT_WORKDIR=/home/jenkins/agent /bin/sh -c apk add --no-cache bash git-lfs less musl-locales netcat-openbsd openssh patch && rm -f /etc/ssh/ssh_host*_key* # buildkit
RUN |6 user=jenkins group=jenkins uid=1000 gid=1000 JENKINS_AGENT_HOME=/home/jenkins AGENT_WORKDIR=/home/jenkins/agent /bin/sh -c sed -i /etc/ssh/sshd_config -e 's/#PermitRootLogin.*/PermitRootLogin no/' -e 's/#PasswordAuthentication.*/PasswordAuthentication no/' -e 's/#SyslogFacility.*/SyslogFacility AUTH/' -e 's/#LogLevel.*/LogLevel INFO/' -e 's/#PermitUserEnvironment.*/PermitUserEnvironment yes/' && mkdir /var/run/sshd # buildkit
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
VOLUME [/home/jenkins/agent /home/jenkins/.jenkins /tmp /run /var/run]
WORKDIR /home/jenkins
RUN |6 user=jenkins group=jenkins uid=1000 gid=1000 JENKINS_AGENT_HOME=/home/jenkins AGENT_WORKDIR=/home/jenkins/agent /bin/sh -c echo "PATH=${PATH}" >> ${JENKINS_AGENT_HOME}/.ssh/environment # buildkit
COPY setup-sshd /usr/local/bin/setup-sshd # buildkit
EXPOSE map[22/tcp:{}]
ENTRYPOINT ["setup-sshd"]
LABEL org.opencontainers.image.vendor=Jenkins project org.opencontainers.image.title=Official Jenkins SSH Agent Docker image org.opencontainers.image.description=A Jenkins agent image which allows using SSH to establish the connection org.opencontainers.image.url=https://www.jenkins.io/ org.opencontainers.image.source=https://github.com/jenkinsci/docker-ssh-agent org.opencontainers.image.licenses=MIT
RUN /bin/sh -c addgroup --gid 281 docker # buildkit
RUN /bin/sh -c addgroup jenkins docker # buildkit
RUN /bin/sh -c apk add --no-cache docker docker-compose # buildkit
RUN /bin/sh -c apk add --no-cache tea # buildkit
RUN /bin/sh -c apk add --no-cache openssl # buildkit
RUN /bin/sh -c apk add --no-cache git-lfs # buildkit
RUN /bin/sh -c git lfs install --system # buildkit

Labels

Key Value
org.opencontainers.image.description A Jenkins agent image which allows using SSH to establish the connection
org.opencontainers.image.licenses MIT
org.opencontainers.image.source https://github.com/jenkinsci/docker-ssh-agent
org.opencontainers.image.title Official Jenkins SSH Agent Docker image
org.opencontainers.image.url https://www.jenkins.io/
org.opencontainers.image.vendor Jenkins project
Details
Container
2025-06-26 15:20:11 +02:00
1
OCI / Docker
linux/amd64
MIT
195 MiB
Versions (2) View all
alpine 2025-06-26
latest 2025-06-26