Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins

基于Docker安装Jenkins

1. 拉取Jenkins镜像文件 下载并安装

docker run -p 8080:8080 -p 50000:50000 -v jenkins_data:/var/jenkins_home jenkinsci/blueocean

2. 关闭防火墙

systemctl stop firewalld

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第1张图片
3. 进入容器

docker exec -it 容器ID /bin/bash

4. 获取密钥

cat /var/jenkins_home/secrets/initialAdminPassword

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第2张图片
Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第3张图片
5. 点击系统管理,选择全局工具配置

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第4张图片
6. 点击Add JDK,取消选中自动安装JDK

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第5张图片
7. 使用echo $JAVA_HOME命令查询jdk默认安装地址

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第6张图片
8. 填写jdk配置

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第7张图片
9. 填写maven仓库配置

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第8张图片
10. 点击系统管理,选择插件管理

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第9张图片
11. 搜索Maven Integration

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第10张图片
12. 安装完插件后填写账号密码信息

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第11张图片
13. 然后再新建一个任务

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第12张图片
14. 填写项目名称,选择构建一个Maven项目,点击OK按钮,Save按钮

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第13张图片
Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第14张图片
15. 上传项目到码云或者GitLab(多种选择)

16. 点击新建的任务

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第15张图片
17. 进行任务配置操作

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第16张图片
18. 填写配置信息

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第17张图片
19. 如果是私有项目,添加连接账号密码

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第18张图片
20. 填写账号密码

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第19张图片
21. 选择账号密码连接(也就是登录码云的账号密码)

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第20张图片
22. 填写clean install 进行build操作 然后保存

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第21张图片
23. 立即构建

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第22张图片
24. 需要等待一段时间(第一次构建可能耗时比较长,因为需要下载一些相关依赖jar包)自动打包

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第23张图片
25. 到下面这个页面则为build成功

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第24张图片
26. build成功后依然不能访问,因为需要执行shell脚本

#!/bin/bash
#服务名称
SERVER_NAME=jenkins-demo
# 源jar路径,mvn打包完成之后,target目录下的jar包名称,也可选择成为war包,war包可移动到Tomcat的webapps目录下运行,这里使用jar包,用java -jar 命令执行  
JAR_NAME=jenkins-demo
# 源jar路径  
#/usr/local/jenkins_home/workspace--->jenkins 工作目录
#demo 项目目录
#target 打包生成jar包的目录
JAR_PATH=/var/jenkins_home/workspace/jenkins-demo/target
# 打包完成之后,把jar包移动到运行jar包的目录--->work_daemon,work_daemon这个目录需要自己提前创建
JAR_WORK_PATH=/var/jenkins_home/workspace/jenkins-demo/target
 
echo "查询进程id-->$SERVER_NAME"
PID=`ps -ef | grep "$SERVER_NAME" | awk '{print $2}'`
echo "得到进程ID:$PID"
echo "结束进程"
for id in $PID
do
kill -9 $id  
echo "killed $id"  
done
echo "结束进程完成"
 
#复制jar包到执行目录
echo "复制jar包到执行目录:cp $JAR_PATH/$JAR_NAME.jar $JAR_WORK_PATH"
cp $JAR_PATH/$JAR_NAME.jar $JAR_WORK_PATH
echo "复制jar包完成"
cd $JAR_WORK_PATH
#修改文件权限
chmod 755 $JAR_NAME.jar
 
java -jar $JAR_NAME.jar

27. 点击进入任务的配置页面

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第25张图片
28. 选择执行shell脚本

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第26张图片
29. 将上面的shell脚本放入并保存

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第27张图片
30. 如果还是不能访问则有可能是在启动jenkins的时候没有映射项目启动的端口号

  1. 重启容器systemctl restart docker
  2. 清空未运行的容器docker rm $(sudo docker ps -a -q)
  3. 映射端口号docker run -p 8080:8080 -p 8087:8087 -p 50000:50000 -v jenkins_data:/var/jenkins_home jenkinsci/blueocean
    -p 8080:8080和-p 8087:8087为映射的端口号

31. 后台启动运行项目需要修改shell脚本

#!/bin/bash
#服务名称
SERVER_NAME=jenkins-demo
# 源jar路径,mvn打包完成之后,target目录下的jar包名称,也可选择成为war包,war包可移动到Tomcat的webapps目录下运行,这里使用jar包,用java -jar 命令执行  
JAR_NAME=jenkins-demo
# 源jar路径  
#/usr/local/jenkins_home/workspace--->jenkins 工作目录
#demo 项目目录
#target 打包生成jar包的目录
JAR_PATH=/var/jenkins_home/workspace/jenkins-demo/target
# 打包完成之后,把jar包移动到运行jar包的目录--->work_daemon,work_daemon这个目录需要自己提前创建
JAR_WORK_PATH=/var/jenkins_home/workspace/jenkins-demo/target
 
echo "查询进程id-->$SERVER_NAME"
PID=`ps -ef | grep "$SERVER_NAME" | awk '{print $2}'`
echo "得到进程ID:$PID"
echo "结束进程"
for id in $PID
do
kill -9 $id  
echo "killed $id"  
done
echo "结束进程完成"
 
#复制jar包到执行目录
echo "复制jar包到执行目录:cp $JAR_PATH/$JAR_NAME.jar $JAR_WORK_PATH"
cp $JAR_PATH/$JAR_NAME.jar $JAR_WORK_PATH
echo "复制jar包完成"
cd $JAR_WORK_PATH
#修改文件权限
chmod 755 $JAR_NAME.jar
 
BUILD_ID=dontKillMe nohup java -jar  $JAR_NAME.jar  &

32. 最后终于大功告成啦

Mr. Cappuccino的第1杯咖啡——基于Docker安装Jenkins_第28张图片

你可能感兴趣的:(Linux,java,linux,docker,jenkins,运维)