jenkins之自动化部署github上maven项目
部署流程:将代码从github上拉取下来,使用maven打包,将打包后的jar通过ssh发送到服务器上,然后构建docker镜像,运行容器。
1.安装插件
如果是第一次使用jenkins,需要检查并确认安装以下插件
首页->Manage Jenkins->Manage Plugins->可选插件,选择插件后点击直接安装
Maven Integration(maven项目的任务)
Publish Over SSH(用于构建后对服务器的操作)
2.全局工具配置
因为我是在docker里安装的所以需要确认已经安装
jdk(不用设置,已经默认安装了)
git(不用设置,已经默认安装了)
maven(没有安装,需要安装)
首页->Manage Jenkins->Global Tool Configuration->maven安装

3.创建一个maven项目的任务

4.设置源码管理
https://github.com/Peng-star-star/spring-boot-demo-hello

5.设置构建
注意Root POM为相对路径

6.发送到服务器并运行
6.1创建SSH server
首页->Manage Jenkins->Sonfigure System->Publish over SSH->新增

6.2其他设置

6.3 dockerfile
文件在github上的地址里有,将会自动pull到jenkins里,发送到服务器上。
#基于哪个镜像
FROM java:-jre-alpine
#复制文件到容器
ADD demo-0.0.-SNAPSHOT.jar /app.jar
#声明需要暴露的端口
EXPOSE
#配置容器启动后执行的命令,随机数
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
6.4run.sh
文件在github上的地址里有,将会自动pull到jenkins里,发送到服务器上。
#!/bin/bash
echo "stop container"
docker stop springboot-demo;
echo "delete container"
docker rm springboot-demo;
echo "delete image"
docker rmi itmuch/springboot-demo-0.0.&&
echo "build image"
docker build -t itmuch/springboot-demo-0.0. .&&
echo "run container"
docker run -d --name springboot-demo -p : itmuch/springboot-demo-0.0.;
点击确定
7.构建
点击立即构建
7.1查看输出

点击“控制台输出”

8.测试
在浏览器输入http://172.16.1.144:9004/

好了,这样完成了配置
jenkins之自动化部署github上maven项目的更多相关文章
- jenkins自动化部署gitlab上maven程序
部署流程:将代码从gitlab上拉取下来,使用maven打包,将打包后的jar通过ssh发送到服务器上,运行jar程序 注意:本文需要安装一些插件Publish Over SSH 1.新建任务 在主页 ...
- 使用travis-ci自动部署github上的项目
travis-ci是什么? 一个使用yaml格式配置用于持续集成完成自动化测试部署的开源项目 官网:https://travis-ci.org/ 使用travis-ci集成vue.js项目 首先,您需 ...
- 微服务下的持续集成-Jenkins自动化部署GitHub项目
@ 目录 一.前言 二.DevOps概念 三.为什么要做持续集成 四.常见云服务 五.手动部署Jenkins 5.1 准备工作 5.2 下载 5.3 启动 5.4 配置 5.5 Jenkins 首页 ...
- 基于 Jenkins Pipeline 自动化部署
最近在公司推行Docker Swarm集群的过程中,需要用到Jenkins来做自动化部署,Jenkins实现自动化部署有很多种方案,可以直接在jenkins页面写Job,把一些操作和脚本都通过页面设置 ...
- CentOS下Docker与.netcore(四)之 三剑客之一Docker-machine+jenkins简单自动化部署
CentOS下Docker与.netcore(一) 之 安装 CentOS下Docker与.netcore(二) 之 Dockerfile CentOS下Docker与.netcore(三)之 三剑客 ...
- gitlab与jenkins的自动化部署(通过webhook与ansilble)
gitlab与jenkins的自动化部署(通过webhook与ansilble) 1.部署介绍 gitlab服务器:192.168.1.49:80jenkins服务器:192.168.1.49:818 ...
- 搭建jenkins实现自动化部署
搭建jenkins实现自动化部署 一.安装jenkins 1.添加yum repos,然后安装 sudo wget -O /etc/yum.repos.d/jenkins.repo https://p ...
- 如何从eclipse中下载并导入Github上的项目
eclipse导入项目,方法就是点击File ->Import,选择Existing Projects into Workspace 但前提是,你导入的这个项目原本就是用eclipse的构建的, ...
- 打包github上的项目,并在本地使用
在GitHub上去找工具并把地址克隆下来 在本地创建一个文件夹,文件夹内右击 (建议路径为英文,并保证本机有github的软件: https://jingyan.baidu.com/article/9 ...
随机推荐
- 作业16:java枚举类的秘密
JAVA代码 public enum EnumTest { HELLO,WORLD } 字节码 public final class EnumTest extends java.lang.Enum&l ...
- 转录组测序(RNA-seq)技术
转录组是某个物种或者特定细胞类型产生的所有转录本的集合.转录组研究能够从整体水 平研究基因功能以及基因结构,揭示特定生物学过程以及疾病发生过程中的分子机理,已广泛应 用于基础研究.临床诊断和药 ...
- 最快得到MYSQL两个表的差集
Mysql里不外乎就是 子查询 和 连接 两种方式. 设第一个表为table1, 第二个为table2, table1包含table2. sql为: //子查询 select table1.id fr ...
- tint2
#---------------------------------------------# TINT2 CONFIG FILE#---------------------------------- ...
- TeamCity安装和配置
目录 TeamCity安装和配置 前言 持续集成(CI) TeamCity 环境 安装 配置TeamCity 项目构建 效果展示 TeamCity自动构建项目及集成IDEA(待更新......) 结束 ...
- puml 用于代码注释
notebook 笔记本 @startuml rectangle sql_decode.py{ object SQLDataset object Name SQLDataset : meta = &q ...
- 记录下js几种常见的数组排序和去重的方法
冒泡排序 , , , , , , , ]; function test(){ ; i < arr.length - ; i++){ ; j < arr.length; j++){ var ...
- reduce方法的使用
reduce(收敛):接收一个回调函数作为累加器,数组中的每个值(从左到右)开始缩减,最终为一个值,是ES5中新增的又一个数组逐项处理方法. reduce(callback,initialValue) ...
- ASE19团队项目 beta阶段 model组 scrum4 记录
本次会议于12月5日,19时30分在微软北京西二号楼sky garden召开,持续10分钟. 与会人员:Lei Chai, Linfeng Qi, Xueqing Wu, Yutong Ling (Z ...
- JavaScript监听回车事件
记录一下,兼容性也考虑到了,原文地址:JavaScript 监听回车事件 JS监听某个输入框 //回车事件绑定 $('#search_input').bind('keyup', function(ev ...