目录

1、Jenkins简介

2、Jenkins的安装及配置

2.1、Docker环境下的安装​编辑

2.2、Jenkins的配置

3、打包部署SpringBoot应用


任何简单操作的背后,都有一套相当复杂的机制。本文将以SpringBoot应用的在Docker环境下的打包部署为例详细讲解如何使用Jenkins一键打包部署SpringBoot应用

Jenkins开源CI&CD软件领导者,提供超过1000个插件支持构建部署自动化满足任何项目需要。我们可以用Jenkins构建部署我们的项目比如说从我们的代码仓库获取代码然后将我们的代码打包成可执行文件,之后通过远程ssh工具执行脚本运行我们的项目

docker pull jenkins/jenkins:lts

docker run -p 8080:8080 -p 50000:5000 --name jenkins 
-u root 
-v /mydata/jenkins_home:/var/jenkins_home 
-d jenkins/jenkins:lts

docker logs jenkins

根据角色管理权限的插件:Role-based Authorization Strategy

远程使用ssh的插件:SSH plugin

这里如果等待时间很长,首先查看jenkins容器是否已经停止运行,如果已经停止运行,使用docker restart 容器ID 来重启jenkins,然后检查上述两个插件是否已经安装成功

角色权限管理

我们可以使用Jenkins的角色管理插件来管理Jenkins的用户比如我们可以给管理员赋予所有权限,运维人员赋予执行任务相关权限,其他人员只赋予查看权限。

代码上传到Git仓库

首先我们需要安装Gitlab(当然你也可以使用Github或者Gitee),然后malltiny-jenkins中的代码上传到Gitlab中去,Gitlab的使用请参考Docker安装详细步骤及相关环境安装配置(mysql、jdk、redis、自己的私有仓库Gitlab 、C和C++环境以及Nginx服务代理)

springdemo项目源码地址springbootdemo

上传完成后Gitlab中的展示效果如下

执行脚本准备

#!/usr/bin/env bash
app_name='springboot-demo-jenkins'
docker stop ${app_name}
echo '----stop container----'
docker rm ${app_name}
echo '----rm container----'
docker run -p 8088:8088 --name ${app_name} 
--link mysql:db 
-v /etc/localtime:/etc/localtime 
-v /mydata/app/${app_name}/logs:/var/logs 
-d mall-tiny/${app_name}:1.0-SNAPSHOT
echo '----start container----'
chmod +x ./springboot-demo-jenkins.sh  
#使用vim编辑器修改
vi springboot-demo-jenkins.sh
# 查看文件格式windows上传上来的默认dos
:set ff 
#修改文件格式unix
:set ff=unix 
#保存退出
:wq
  • 执行.sh脚本,测试使用,可以不执行:
./springboot-demo-jenkins.sh

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注