项目实战!!! 在docker上部署Jenkins
需求:通过docker安装jenkins,并且通过Jenkins部署项目,最终效果是只要在jenkins对某个项目点击构建,jenkins就会去gitLab上拉取最新项目的最新代码,然后根据你自己项目的pom.xml文件,把项目打包成jar,并且自动把这个最新的jar运行起来,达到一键式构建的目标。
需求:通过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
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)