资讯专栏INFORMATION COLUMN

jenkins+maven+docker+github全自动化部署SpringBoot实例

lk20150415 / 3318人阅读

实践性尝试,这里只在一台虚拟机下操作。

1.vmware 下centos 安装

设置centos 桥接模式
参考:https://www.cnblogs.com/loven...

2.centos 软件安装

1) docker 安装

 yum install -y docker

2)JDK 安装

 参考:https://blog.csdn.net/evan_chen_1/article/details/55097252

3)Maven 安装

参考:https://blog.csdn.net/mynameissls/article/details/54140176  

4)Git 安装

yum install git    

5)安装jenkins

参考:https://www.cnblogs.com/woshimrf/p/6103366.html

3.Jenkins 配置

安装插件

  Locale plugin  设置中文界面    
  设置参考: https://www.cnblogs.com/hanxiaohui/p/8136621.html   
  
  Publish Over SSH  配置SSH登陆centos 
  使用Publish Over SSH插件实现远程自动部署
  参考: https://www.cnblogs.com/YatHo/p/6739814.html  
  

本例配置如下

Locale plugin

Publish Over SSH

4 创建JOB 名字为cicd_demo

5.配置cicd_demo任务

本例演示项目地址为:https://github.com/chendishen...
1)配置General


上图中git项目是我的一个测试项目

2)源码管理

3)构建触发器
Poll SCM:定时检查源码变更(根据SCM软件的版本号),如果有更新就checkout最新code下来,然后执行构建动作。我的配置如下:

勾选 Poll SCM ,日程表填入: `* * * * *` (5个*),忽视警告


4)构建环境
不设置

5)构建
maven version 选择 maven
Goals : clean package

6)构建后操作
在配置最后找到“增加构建后操作步骤”,选择"Send build artifacts over SSH"

配置说明:

1.SSH Server Name 就是前面配置的Publish Over SSH 的名称
2.Source files 是指源文件位置,这个位置是在jenkins的工作目录下的job文件在内 ,
(/var/lib/jenkins/workspace/cicd_demo 默认路径 cicd_demo是我的job名称,maven 编译后会在此文件内创建 target 目录, cicd-demo*.jar是构建后jar包命名前缀+版本号
见pom.xml 中 artifactId )
3.Remove prefix 删除前缀 target
4.Remote directory 远程目录,结合前面Publish Over SSH配置就是 /root/test 目录,这些配置完毕以后, jenkins 在编译成功后,就会自动把 文件 copy 到 B主机下的/root/test
5.Exec command , 我这里的操作是吧 主机 /root/test 的文件 复制到 我自己的 /usr/local/project/cicd_demo下 然后进入到此目录,执行我的 buildimage.sh 和 run.sh

配置中的目录和文件需要提前创建

mkdir /usr/local/project/cicd_demo 

在/usr/local/project/cicd_demo目录下

文件说明

buildimage.sh   用来构建镜像 
Dockerfile 为构建镜像所需文件
run.sh 用来启动容器

buildimage.sh创建

vi /usr/local/project/cicd_demo/buildimage.sh

buildimage.sh 内容:

docker build -t cicd_demo:1.0 .

Dockerfile创建

vi /usr/local/project/cicd_demo/Dockerfile

Dockerfile内容:

# 版本信息
#java:latest 为centos官方java运行环境镜像,600多M ,可以提前pull到主机本地
FROM java:latest 
MAINTAINER cds "352826256@qq.com"

#实际上可以配置成变量 
ADD cicd-demo-1.0.jar /usr/local/jar/

RUN mv /usr/local/jar/cicd-demo-1.0.jar  /usr/local/jar/app.jar

#开启内部服务端口 cicd-demo 项目端口
EXPOSE 8090

CMD ["java","-jar","/usr/local/jar/app.jar"]

run.sh 创建

vi /usr/local/project/cicd_demo/run.sh

run.sh 内容 :

docker rm -f cicd_demo
docker run --name="cicd_demo" -p 8090:8090 -d cicd_demo:1.0


6.cicd_demo任务运行

控制台输出如下

至此自动构建任务完成

7.结果验证

在物理机浏览器输入 http://192.168.1.104:8090/index

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/27261.html

相关文章

  • 从0开始搭建自动部署环境(续)

    摘要:从开始搭建自动部署环境续前言上一篇从开始搭建自动部署环境虽然环境搭建起来了,但是配置少了一部分步骤。创建本地仓库参考新建项目项目是我写的一个用来测试环境的项目,代码托管在上。 从0开始搭建自动部署环境(续) 前言 上一篇从0开始搭建自动部署环境虽然环境搭建起来了,但是配置少了一部分步骤。本来应该写到上一篇中,但是这样做篇幅过长了。另外,此篇会使用自动部署一个同步在Github上的Spr...

    lily_wang 评论0 收藏0
  • 从0开始搭建自动部署环境(续)

    摘要:从开始搭建自动部署环境续前言上一篇从开始搭建自动部署环境虽然环境搭建起来了,但是配置少了一部分步骤。创建本地仓库参考新建项目项目是我写的一个用来测试环境的项目,代码托管在上。 从0开始搭建自动部署环境(续) 前言 上一篇从0开始搭建自动部署环境虽然环境搭建起来了,但是配置少了一部分步骤。本来应该写到上一篇中,但是这样做篇幅过长了。另外,此篇会使用自动部署一个同步在Github上的Spr...

    shuibo 评论0 收藏0
  • jenkins自动项目部署实战

    摘要:自动化项目部署实战简介以下文章只是从入门来说明的部署过程,仅供新手入门,高手勿喷。结语至此,整个安装和项目发布过程就描述到这里了,希望对大家有所帮助。 jenkins自动化项目部署实战 简介 以下文章只是从入门来说明jenkins的部署过程,仅供新手入门,高手勿喷。 安装 命令如下: 拉镜像,无需解释 docker pull jenkins 创建挂载路径 mkdir /mnt/jen...

    junbaor 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<