需求:通过docker安装jenkins,并且通过Jenkins部署项目,最终效果是只要在jenkins对某个项目点击构建,jenkins就会去gitLab上拉取最新项目的最新代码,然后根据你自己项目的pom.xml文件,把项目打包成jar,并且自动把这个最新的jar运行起来,达到一键式构建的目标。

在服务器上搭建Jenkins

1.在服务器上装好这三个东西:jdk,git,maven

2.拉取jenkis镜像 启动jenkins镜像

docker   pull   jenkins/jenkins:latest      #拉取jenkins最新镜像

查看jenkins版本

docker search jenkins

3.下载镜像包

docker pull jenkins/jenkins    安装包下载命令
docker images    查看镜像包

4.创建jenkins目录

mkdir /home/jenkins_home

5.创建容器

docker run -d --name common-build -p 8026:22   -v /home/jenkins_home:/home/jenkins_home jenkins/jenkins:lts
​

6.查看jenkins启动情况

docker ps |grep jenkins

显示有jenkins就表示已启动

7.在网页上访问服务器

显示需要输入管理员密码

docker logs 容器名/id      创建完容器后查看初始密码
cat /var/jenkins_home/secrets/initialAdminPassword                  查看密码

输入管理员密码后进入新手入门界面

 

7.创建管理员账户

实例配置

8.配置git

 

 

在172.17.3.203上点击项目 -->配置-->源码管理-->选择Git

依次点击: Git - > Add Repository -> 添加(jenkins凭据)

Repository URL 输入git仓库地址

 

9.添加凭证

 

填写凭证

 

UserName是你的gitLab用户名,然后点击Enter directy,点击Add,然后把在gitLab仓库里面生成ssh key,这里面生成的私钥找出来,也就是"id_rsa"文件,把这个私钥放到里面。

10.选择git仓库

选择gitLab分支

 

配置Maven

 

11.新建Item

设置jenkins的任务

点击新建Item -->选择Freestyle project  构建一个自由风格的软件项目-->点击General-->勾选参数化构建过程(This project is parameterized)-->添加参数-->git参数(Git Parameter)

定义git参数的名称和描述  (名称任意  参数类型选择分支或标签)

默认值(gitlab的项目仓库分支)origin/main

 

12.项目配置

 

 

13.配置docker环境

 

14.项目创建完成后,对项目进行校验

在首页进行构建

然后点一下这个进度条,就可以详细看到此次构建的内容

再点一些控制台输出,即可看到对应的日志信息了

 

15 把容器与Jenkins进行关联

在172.17.3.203创建容器,创建的容器id关联到jenkins上的

sudo docker ps 查看容器

fun@ubuntu:~$ sudo docker ps
[sudo] fun 的密码: 
CONTAINER ID        IMAGE                   COMMAND               CREATED             STATUS              PORTS                  NAMES
f5482718ab38        android-package:0.0.1   "/usr/sbin/sshd -D"   22 months ago       Up 3 months         0.0.0.0:8037->22/tcp   vsoontech-build
1cda7a9301a9        android-package:0.0.1   "/usr/sbin/sshd -D"   2 years ago         Up 3 months         0.0.0.0:8036->22/tcp   baofeng-build

0.0.0.0:8037 端口 把8037输入到jenkins上的Nodes--->172.17.5.178(common-build)

高级中的端口输入8037 Java路径输入/home/fun/zhaojm/jdk1.8.0_261/bin/java 连接超时时间 60 最大重试次数 0 重试间隔时间 0

 

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐