1. 搭建
-
查询镜像
docker search jenkins
-
下载镜像
docker pull jenkins/jenkins
-
启动容器
#创建文件夹 mkdir -p /home/jenkins_home #权限 chmod 777 /home/jenkins_home #启动Jenkins docker run -d -uroot -p 9095:8080 -p 50000:50000 --name jenkins -v /home/jenkins_home:/var/jenkins_home -v /etc/localtime:/etc/localtime jenkins/jenkins
命令 描述 -d 后台运行容器,并返回容器ID -uroot 使用 root 身份进入容器,推荐加上,避免容器内执行某些命令时报权限错误 -p 9095:8080 将容器内8080端口映射至宿主机9095端口,这个是访问jenkins的端口 -p 50000:50000 将容器内50000端口映射至宿主机50000端口 –name jenkins 设置容器名称为jenkins -v /home/jenkins_home:/var/jenkins_home :/var/jenkins_home目录为容器jenkins工作目录,我们将硬盘上的一个目录挂载到这个位置,方便后续更新镜像后继续使用原来的工作目录 -v /etc/localtime:/etc/localtime 让容器使用和服务器同样的时间设置 jenkins/jenkins 镜像的名称,这里也可以写镜像ID -
查看容器日志,获取初始密码
docker logs jenkins
-
在浏览器中输入:http://serverIp:port/访问jenkins,serverIp为docker宿主机的ip,port即为宿主机映射的端口。我的即为:http://127.0.0.1:9095/,输入前一步获取的密码
-
安装推荐的插件
-
插件下载问题
因为网络原因,需要将插件源设置为国内的,这样才可以安装插件。进入宿主机目录 /home/jenkins_home/,编辑文件 hudson.model.UpdateCenter.xml
cd /home/jenkins_home/ cat hudson.model.UpdateCenter.xml
-
-
创建管理员账户
-
配置实例
3. 构建项目
-
新建任务–>构建一个自由风格的软件项目->点击
确定
-
选择
执行shell
-
hello world
echo 'hello world'
-
点击【保存】后,进入项目详情页,点击【立即构建】
-
点击后产生构建记录
-
点击构建记录查看
#1
构建的控制台输出 -
控制台查看
4. 参数化构建
-
参数化构建
-
模拟添加两个字符串参数
-
并且在
Build Steps的
执行shell
中使用我们定义的参数,点击【保存】echo 'hello world' echo ${parameter1} echo '--------' echo ${parameter2}
-
Build with Parameter
-
构建完成后
控制台查看
5. 部署 SpringBoot
5.1 插件下载
Jenkins 启动成功之后,接下来我们安装三个必要的插件:
- Maven Integration:Maven 构建工具
- Publish Over SSH:整个工具,将来把 Jenkins 打包好的 jar 上传到应用服务器上。
- Gitee:协助使用 Gitee 仓库。
5.2 准备代码
考虑到 GitHub 网络有时候不稳定,我这里使用了 Gitee,一个很简单的 Spring Boot 工程,里边有一个 hello 接口
我的代码仓库地址:https://gitee.com/zhourui815/jenkins_demo
5.3 准备服务器
有服务器的用服务器,也可以用虚拟机,或者windows的wsl(windows子系统),我使用的是windows子系统,只要你的jenkins服务器能够ping通你的服务器.并且需要开启ssh服务
5.4. 配置Java部署环境
-
全局工具配置
-
配置JDK
-
配置maven
-
配置git
-
配置完成后点击【保存】进行保存。
5.5 远程的凭证配置
5.5.1 应用服务器信息172.22.15.123
应用服务器,就是将来 Jenkins 将代码构建成 jar 包后,要上传的服务器的信息(地址、用户名以及密码)。
配置步骤如下,首先找到配置的位置:
-
系统配置
-
配置服务器ssh连接
5.5.2 配置Gitee 的信息及凭据
-
还是在系统配置,配置gitee信息
-
配置Gitee凭据
添加
按钮
5.5.2 构建maven项目
-
创建项目
-
首先选择 Git,填入 Gitee 上的仓库地址
-
配置凭证 凭证就写 Gitee 的用户名/密码。
-
日志打印时间戳
-
接下来输入项目构建命令,将来 Jenkins 从 Gitee 上拉取代码下来之后,就执行该命令对项目进行打包
-
配置上传构建好的文件,并执行启动命令
-
SSH Publishers详细信息
-
编写部署脚本deploy.sh放在/root/data/下
export JAVA_HOME=/opt/java export PATH=$JAVA_HOME/bin:$PATH JAR_PATH=/root/data JARFILE=jenkins_demo-0.0.1-SNAPSHOT.jar ps -ef | grep $JARFILE | grep -v grep | awk '{print $2}' | xargs kill -9 java -jar $JAR_PATH/$JARFILE > out.log & if [ $? = 0 ];then sleep 30 tail -n 50 out.log fi
-
另外,可以开启 SSH 操作日志,开启日志之后,就可以看到 Jenkins 中操作应用服务器其的过程了,特别是大家第一次配置的时候,容易出错,配置了日志,将来出错就知道什么原因导致的错误了。
-
构建成功(如果构建不成功可以根据控制台日志查看问题)
-
访问测试 http://172.22.15.123:8080/test/t1
6. 部署Vue项目
6.1 安装Node.js插件并重启
6.2 全局工具配置
配置nodejs
6.3 构建node项目
-
构建一个自由风格的项目
-
此时就可以选择node部署
-
后续配置参照springboot配置,将vue编译后的文件上传到对于服务器的nginx对于目录中解压即可,脚本比较简单可以自行查找资料