docker+jinkens实现自动化部署

文章目录

  • 前言
  • 安装docker
  • docker安装jinkens
    • 安装访问
    • 解锁jinkens
  • 安装插件
    • 创建一个新的用户
  • 配置环境工具
    • 安装插件
  • Jenkins实现Springboot项目自动部署
  • 构建项目
  • docker 常用命令

前言

jinkens的搭建我看过很多原生的搭建,对于我这个小白而言就是一脸懵逼,学习过docker之后尝试利用docker搭建jinkens,搭建过程却是意想不到的简单,本文我将用简单详细的方式,记录我的操作实践
另外希望大家点个赞评论一下,也是作为小白默默付出的鼓励吧

安装docker

如果相关docker不会使用的话,请参考我的另一篇博客

https://william.blog.csdn.net/article/details/94881867

docker安装jinkens

安装访问

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

docker+jinkens实现自动化部署_第1张图片

这样利用你访问机器的IP地址+8080 即可出现jinkens的界面
docker+jinkens实现自动化部署_第2张图片

解锁jinkens

进行下一步的时候,他会提示让你解锁jenkins
注意第一次安装jinkens的时候,其实控制台会有显示密钥,但是我这里是第二次安装啦,所以只能去容器里看
docker+jinkens实现自动化部署_第3张图片
查看容器id
doker ps -a
在这里插入图片描述
进入容器

docker exec -it aba953e44a2a /bin/bash

在这里插入图片描述
然后直接 利用cat 图片提示的路径 访问即可

cat 图片提示你的路径

安装插件

这里选择推荐的插件
docker+jinkens实现自动化部署_第4张图片
爱的魔力转圈圈 — 等待吧
docker+jinkens实现自动化部署_第5张图片

创建一个新的用户

docker+jinkens实现自动化部署_第6张图片
jinkens界面
docker+jinkens实现自动化部署_第7张图片

配置环境工具

在jinkens中尽然他可以部署环境,那么那就依赖部署环境的依赖工具
值得注意的是,在我们安装插件的时候其实jinkens就已经自带jdk 和maven的插件
我们需要去jinkens去进行配置这些查件的路径
docker+jinkens实现自动化部署_第8张图片
获取jdk地址这里有个简单的命令

进入到jenkins容器中 echo $JAVA_HOME 获取java环境安装地址

docker+jinkens实现自动化部署_第9张图片
Maven的安装
docker+jinkens实现自动化部署_第10张图片

安装插件

在我们创建任务德时候,其实jinkens他默认是不支持创建maven任务的,这时候我们就需要扩展插件帮我们实现创建maven任务
找到 “系统管理“ - “安装插件” ,点击 “可选插件”,找到如下maven插件的版本
插件名称 Maven Integration
docker+jinkens实现自动化部署_第11张图片
docker+jinkens实现自动化部署_第12张图片

Jenkins实现Springboot项目自动部署

docker+jinkens实现自动化部署_第13张图片
在这里 因为jinkens是需要拉去代码托管平台的项目,这里我用的码云,所以我们必须要配置jinkens的需要拉去的git地址
docker+jinkens实现自动化部署_第14张图片
docker+jinkens实现自动化部署_第15张图片
项目打包
docker+jinkens实现自动化部署_第16张图片

构建项目

点击立即构建,然后点击进度条
docker+jinkens实现自动化部署_第17张图片
第一次构建可能耗时比较长,因为需要下载一些相关依赖jar包
在这里插入代码片docker+jinkens实现自动化部署_第18张图片
查看控制台 信息
docker+jinkens实现自动化部署_第19张图片
这里记录的是我们构建成功时jar的位置和名称;
当我们部署成功时候,其实我们只是把项目打包成功啦,至于运行项目我们还需要自己手动java -jar 进行开启,那么如何自动运行呢,
在任务配置中
docker+jinkens实现自动化部署_第20张图片

#!/bin/bash
#服务名称
SERVER_NAME=mayikt_springboot
# 源jar路径,mvn打包完成之后,target目录下的jar包名称,也可选择成为war包,war包可移动到Tomcat的webapps目录下运行,这里使用jar包,用java -jar 命令执行  
JAR_NAME=meitedu_springboot-0.0.1-SNAPSHOT
# 源jar路径  
#/usr/local/jenkins_home/workspace--->jenkins 工作目录
#demo 项目目录
#target 打包生成jar包的目录
JAR_PATH=/var/jenkins_home/workspace/meitedu_springboot/target/
# 打包完成之后,把jar包移动到运行jar包的目录--->work_daemon,work_daemon这个目录需要自己提前创建
JAR_WORK_PATH=/var/jenkins_home/workspace/meitedu_springboot/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  &

配置完后 点击立即构建发现运行了项目即为成功
docker+jinkens实现自动化部署_第21张图片
然后我们运行发现, 服务器地址:8081 项目路径 ,即可部署成功;
docker+jinkens实现自动化部署_第22张图片

docker 常用命令

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

你可能感兴趣的:(运维)