Jenkins+Docker+GitLab自动化部署springBoot项目

Jenkins+Docker+GitLab自动化部署springBoot项目

  • 安装Docker
  • Docker安装Jenkins
    • 安装
    • 启动
  • Jenkins配置
    • JDK配置
    • 配置Maven
    • 下载Maven插件
    • 配置自动化部署

安装Docker

之前有专门介绍这里就不赘述了

链接: docker安装

Docker安装Jenkins

安装

安装

docker pull jenkins/jenkins

Jenkins+Docker+GitLab自动化部署springBoot项目_第1张图片
查看镜像

docker images 

注意:nginx和centos镜像本教程无关
在这里插入图片描述

启动

在data目录下创建jenkins_home目录

mkdir /data/jenkins_home

赋权

chmod 777 jenkins_home

启动

docker run --name myjenkins -d -p 8080:8080  -v /data/jenkins_home:/var/jenkins_home  jenkins/jenkins
  • –name 给这个容器的名字
  • -d 后台启动
  • -p 指定映射端口 宿主机端口:容器端口
  • -v 数据卷挂载(宿主机和容器都能访问) 宿主机目录:容器内目录
    在这里插入图片描述
    查看启动情况
docker ps 

在这里插入图片描述
访问jenkins
Jenkins+Docker+GitLab自动化部署springBoot项目_第2张图片
发现被拒绝了,因为我这里是阿里云安全组8080没有开放
Jenkins+Docker+GitLab自动化部署springBoot项目_第3张图片
发现成功的访问到了
Jenkins+Docker+GitLab自动化部署springBoot项目_第4张图片
进入镜像

docker exec -it myjenkins /bin/bash

查看密码
Jenkins+Docker+GitLab自动化部署springBoot项目_第5张图片
查看这个文件

cat /var/jenkins_home/secrets/initialAdminPassword

Jenkins+Docker+GitLab自动化部署springBoot项目_第6张图片
安装推荐的插件
Jenkins+Docker+GitLab自动化部署springBoot项目_第7张图片
Jenkins+Docker+GitLab自动化部署springBoot项目_第8张图片
创建账户
Jenkins+Docker+GitLab自动化部署springBoot项目_第9张图片
Jenkins+Docker+GitLab自动化部署springBoot项目_第10张图片
Jenkins+Docker+GitLab自动化部署springBoot项目_第11张图片
Jenkins+Docker+GitLab自动化部署springBoot项目_第12张图片
安装成功

Jenkins配置

JDK配置

Jenkins+Docker+GitLab自动化部署springBoot项目_第13张图片
Jenkins+Docker+GitLab自动化部署springBoot项目_第14张图片

Jenkins+Docker+GitLab自动化部署springBoot项目_第15张图片

找到JAVA_HOME 因为jenkins镜像已经有jdk了

 echo $JAVA_HOME

Jenkins+Docker+GitLab自动化部署springBoot项目_第16张图片
Jenkins+Docker+GitLab自动化部署springBoot项目_第17张图片

配置Maven

指定name,自动安装,点击Save即可
Jenkins+Docker+GitLab自动化部署springBoot项目_第18张图片

下载Maven插件

Jenkins+Docker+GitLab自动化部署springBoot项目_第19张图片
Jenkins+Docker+GitLab自动化部署springBoot项目_第20张图片
Jenkins+Docker+GitLab自动化部署springBoot项目_第21张图片
选择构建Maven项目
Jenkins+Docker+GitLab自动化部署springBoot项目_第22张图片
选择配置
Jenkins+Docker+GitLab自动化部署springBoot项目_第23张图片
Jenkins+Docker+GitLab自动化部署springBoot项目_第24张图片
Jenkins+Docker+GitLab自动化部署springBoot项目_第25张图片
在开始构建前执行一些任务比如停止然后删除镜像等,根据自身情况而定,可以选择自己执行脚本或者SSH连接其他服务运行命令
Jenkins+Docker+GitLab自动化部署springBoot项目_第26张图片

比如我这里需要先停止Api镜像 删除Api任务和镜像,但是我的服务都在宿主机上运行的docker容器和宿主机又是相互隔离的,图方便就用SSH直接连宿主机运行命令
Jenkins+Docker+GitLab自动化部署springBoot项目_第27张图片

如果发现自己没有ssh选项找到 Publish Over SSH 插件安装即可
Jenkins+Docker+GitLab自动化部署springBoot项目_第28张图片
在配置里进行配置密码和账号
Jenkins+Docker+GitLab自动化部署springBoot项目_第29张图片
配置maven打包命令

clean   install   -T 1C -Dmaven.test.skip=true  -Dmaven.compile.fork=true

Jenkins+Docker+GitLab自动化部署springBoot项目_第30张图片
构建完毕可以自定义具体咋执行,比如我这里就把构建完的jar包复制到某个目录下进行build成镜像
Jenkins+Docker+GitLab自动化部署springBoot项目_第31张图片
然后在执行一个ssh 用命令的方式启动镜像
Jenkins+Docker+GitLab自动化部署springBoot项目_第32张图片

配置自动化部署

登录自己的GitLab
Jenkins+Docker+GitLab自动化部署springBoot项目_第33张图片
Jenkins+Docker+GitLab自动化部署springBoot项目_第34张图片
Jenkins+Docker+GitLab自动化部署springBoot项目_第35张图片

找到这里需要我们填写一个URL和一个key,打开之前JenKins的配置找到url和我们之前生成的key
Jenkins+Docker+GitLab自动化部署springBoot项目_第36张图片
Jenkins+Docker+GitLab自动化部署springBoot项目_第37张图片
Jenkins+Docker+GitLab自动化部署springBoot项目_第38张图片
然后在gitLab上测试
Jenkins+Docker+GitLab自动化部署springBoot项目_第39张图片
发现Jenkins成功触发了构建,以后我们提交了代码就会自动的构建完成了自动化部署,最后去看看构建日志
Jenkins+Docker+GitLab自动化部署springBoot项目_第40张图片
构建成功

你可能感兴趣的:(笔记,docker,gitlab,jenkins)