Как мастер jenkins подключается к динамическому докеру, используя ключ SSH? - PullRequest
0 голосов
/ 02 октября 2018

Я использую подчиненные докеры, которые создают рабочие места.Мастер 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"]
...