Docker宿主机配置
第一步. 安装docker
Docker安装-7.note
第二步. 配置docker开启远程访问
vim /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock 改成 ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H fd:// --containerd=/run/containerd/containerd.sock
第三步:获取docker.sock的权限
chmod o+rw /var/run/docker.sock
第四步、制作镜像
ARG version
FROM alpine:latest
ARG version
RUN echo "http://mirrors.aliyun.com/alpine/latest-stable/main/" > /etc/apk/repositories
RUN echo "http://mirrors.aliyun.com/alpine/latest-stable/community/" >> /etc/apk/repositories
# Install SSH
RUN apk update && \
apk add --no-cache openssh tzdata && \
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
sed -i "s/#PermitRootLogin.*/PermitRootLogin yes/g" /etc/ssh/sshd_config && \
ssh-keygen -t dsa -P "" -f /etc/ssh/ssh_host_dsa_key && \
ssh-keygen -t rsa -P "" -f /etc/ssh/ssh_host_rsa_key && \
ssh-keygen -t ecdsa -P "" -f /etc/ssh/ssh_host_ecdsa_key && \
ssh-keygen -t ed25519 -P "" -f /etc/ssh/ssh_host_ed25519_key
# Install jdk
RUN apk add openjdk8 curl busybox tzdata && \
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
echo Asia/Shanghai > /etc/timezone && \
apk del tzdata && \
rm -rf /tmp/* /var/cache/apk/*
# Generate ssh key
RUN ssh-keygen -A
# Expose 22
EXPOSE 22
# Set root password
RUN echo "root:123456" | chpasswd
# Post steps
ENV TZ Asia/Shanghai
# 执行ssh启动命令
CMD ["/usr/sbin/sshd", "-D"]
根据Docker制作镜像,镜像名要与Jenkins配置里面的Docker image里填的一样
第五步:配置Jenkins
1、安装docker插件
jenkins插件名称
Docker plugin
This plugin integrates Jenkins with Docker
插件文档地址:https://wiki.jenkins.io/display/JENKINS/Docker+Plugin
2、管理Jenkins --系统管理
接至最后,点击Add a cloud
第一种,unix
第二种,tcp,我没成功
第六步、测试
自由风格项目:在Master Jenkins中新建一个自由风格的项目
尝试构建,一开始等待拉起docker-slave,稍等几秒钟,开始正常构建。