Я использую подчиненные докеры, которые создают рабочие места.Мастер Jenkins подключается к динамическим док-серверам через SSH для копирования агента удаленного взаимодействия.Ниже моя конфигурация Дженкинс.
Конфигурация плагина Jenkins Docker
Как работает опция «Ввод ключа SSH»?Что означает уникальная личность мастера Дженкинса в приведенном ниже предложении?
'Выделенный SSH-ключ (на основе уникальной идентичности мастера Дженкинса) будет введен в контейнер, и sshd настроен соответствующим образом'
Dockerfile, используемый длясоздать образ ведомого докера:
FROM centos:latest
MAINTAINER ben5556
# Install a basic SSH server GIT, UNZIP and JDK 8
RUN yum install -y openssh-server git unzip java-1.8.0-openjdk-headless && yum clean all
# update sshd settings, create jenkins user, set jenkins user pw, generate ssh keys
RUN sed -i 's|session required pam_loginuid.so|session optional pam_loginuid.so|g' /etc/pam.d/sshd \
&& mkdir -p /var/run/sshd \
&& useradd -u 1000 -m -s /bin/bash jenkins \
&& echo "jenkins:<password>" | chpasswd \
&& /usr/bin/ssh-keygen -A \
&& echo export JAVA_HOME="/`alternatives --display java | grep best | cut -d "/" -f 2-6`" >> /etc/environment
# Set java environment
ENV JAVA_HOME /etc/alternatives/jre
# Copy & Install maven
COPY apache-maven-3.5.4-bin.zip /opt/
WORKDIR /opt
RUN unzip apache-maven-3.5.4-bin.zip
# Append PATH env with Maven location
ENV PATH="/opt/apache-maven-3.5.4/bin:${PATH}"
# Standard SSH port
EXPOSE 22
CMD ["/usr/sbin/sshd", "-D"]