主机名 | IP |
---|---|
jenkis | 192.168.0.150 |
jenkis-agent | 192.168.0.155 |
# 下载镜像
docker pull jenkins/jenkins:2.235.3-alpine
# 上面的方式由于安装插件用的是google地址,插件安装不方便,喜欢可以用中国定制版安装jenkins
# 下载中国定制版
# docker pull jenkinszh/jenkins-zh:2.267
# 自己制作镜像
# Dockerfile
FROM jenkins/jenkins:2.235.3-alpine
MAINTAINER xun
USER root
RUN echo "http://mirrors.aliyun.com/alpine/latest-stable/main/" > /etc/apk/repositories && \
echo "http://mirrors.aliyun.com/alpine/latest-stable/community/" >> /etc/apk/repositories
RUN apk --update add curl bash tzdata && \
rm -rf /var/cache/apk/*
ENV TZ Asia/Shanghai
ENV JENKINS_UC https://updates.jenkins-zh.cn
ENV JENKINS_UC_DOWNLOAD https://mirrors.tuna.tsinghua.edu.cn/jenkins
ENV JENKINS_OPTS="-Dhudson.model.UpdateCenter.updateCenterUrl=https://updates.jenkins-zh.cn/update-center.json"
ENV JENKINS_OPTS="-Djenkins.install.runSetupWizard=false"
COPY init.groovy /usr/share/jenkins/ref/init.groovy.d/init.groovy
COPY hudson.model.UpdateCenter.xml /usr/share/jenkins/ref/hudson.model.UpdateCenter.xml
COPY mirror-adapter.crt /usr/share/jenkins/ref/mirror-adapter.crt
# Dockerfile最后的3个文件,可以在github上下载
https://github.com/jenkins-zh/jenkins-formulas/tree/2.221
# 制作镜像
docker build --rm -t lx/jenkins:2.235.3-alpine .
# 创建挂载目录,并授权
mkdir -p /data/jenkinsvolume && chown -R 1000:1000 /data/jenkinsvolume
# 运行容器
docker run -itd --name jenkins -p 8080:8080 -p 50000:50000 -u root -e JAVA_OPTS=-Duser.timezone=Asia/Shanghai --restart=always -v/data/jenkinsvolume/:/var/jenkins_home/ lx/jenkins:2.235.3-alpine
# 查看日志
docker logs -f jenkins
# 日志中会有密码,和保存密码的文件地址
# Jenkins initial setup is required. An admin user has been created and a password generated.
# Please use the following password to proceed to installation:
# 962f0e37cbca4d9bb1e1862f0401f58c
# This may also be found at: /var/jenkins_home/secrets/initialAdminPassword
# 访问
http://192.168.0.150:8080
# 安装自定义插件,勾选掉不需要的,比如:ant、gradle
# 清华大学插件下载地址
https://mirrors.tuna.tsinghua.edu.cn/jenkins/
# 进入jenkins,在插件管理中找到要安装的插件版本,然后去清华大学下载地址中下载
# 然后在插件管理中,高级中,上传下载的插件
点击浏览器右下角Jenkins中文社区
,进入界面,点击使用
,复制https网址
点击设置中心地址
,把复制的网址复制到升级站点中
点击提交
,点击立即获取
# 压缩包上传到服务器
# 分别解压缩
unzip -d /opt apache-maven-3.8.1-bin.zip
tar zxf git-2.31.1.tar.gz -C /opt
tar zxf jdk-8u261-linux-x64.tar.gz -C /opt
# 重命名
cd /opt
mv apache-maven-3.8.1/ maven
mv jdk1.8.0_281/ jdk8
# 安装git依赖
yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
# 删除yum安装的git
yum -y remove git
# 安装自己下载的git
cd /opt/git-2.31.1
./configure --prefix=/opt/git
make -j4 && make install
# 配置环境变量
vi /etc/profile
export PATH
export JAVA_HOME=/opt/jdk8
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export MAVEN_HOME=/opt/maven
export PATH=$MAVEN_HOME/bin:$PATH
export PATH=$PATH:/opt/git/bin
source /etc/profile
# 配置软连接
ln -s /opt/jdk8/bin/java /usr/bin/
ln -s /opt/maven/bin/mvn /usr/bin/
ln -s /opt/git/bin/git /usr/bin
# 在jenkins(192.168.0.150)上生成ssh key
ssh-keygen -t rsa
# jenkins对jenkins-agent免密登录
ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.0.155
点击凭据(Manage Credentials)
,在全局
上点击添加凭据
类型
选择ssh,描述
:jenkins-agent-155-ssh,username
:root,password
:123456(username,password为155节点的root用户名和密码)
查看jenkins的ssh 私钥信息,cat /root/.ssh/id_rsa,复制私钥信息
选择Enter directly
,Add
,把私钥信息paste进去
确定
更新agent的连接方式
进入节点管理
,进入agent,点击配置从节点
启动方式
改为ssh,主机
:192.168.0.155,选择刚才添加的凭据,Host Key。。。
选择不验证(Non...)
配置远程工作目录
(/data/workspace,需要去agent上手动创建目录)
确定
可以使用了