原始发布部署:

   石器时代的我们,先是本地打包好项目,在去服务器上把原来的文件删了,然后回到本地copy到服务器;

   这操看起来简单,实际部署的人就知道多烦了,假如来几个项目都要重新发布;那就爽了;

   今天小编分享个自动打包部署方法,Jenkins 上只要你的小鼠标轻轻一点就OK;

正文:

  首先是服务器上安装 Jenkins ;前提呢要现在服务器上安装Java 环境  因为他是依据Java 环境运行的;

  这里如何安装就不多说了,请参考这位哥们的博文 https://blog.csdn.net/running_shuai/article/details/80625822 基本在服务器上傻瓜式安装就行了;

安装后接下来是时候展现真正的技术了:

  注意: 部署前端项目还需要用到 git 以及 node.js ,java项目的话那就是maven了; git 的话;直接在服务器上下载 git 安装解压就行了,没什么好注意的;

      jenkins需要git插件来支持git,所以我们需要为jenkins添加Git插件,还有node也是,需要NodeJS Plugin插件, gitLab需要GitLab Plugin,gitHub需要GitHub Plugin,总之需要的插件还蛮多  具体看你项目构成;

      下载插件的位置: 系统管理 --> 插件管理  然后就能看到很多插件了,下载下来就行

  1.1:配置一个 Publish over SSH (这是你的服务器,你项目要部署到的地方)

  

  1.2: 新建一个任务 (你要发布的项目)

  

  1.3: 配置gitLab / gitHub 源码

 

  

  1.4: 配置构建触发器

  

  1.5: 构建环境

  

  1.6: 配置构建命令 (就是些在服务器里要执行的命令)

  1.7: 我公司项目因为多用的是一段shell脚本 去执行删除、解压等操作的, 这个可忽略,那上面 Exec command 部分你只需 改成加压命令就行  tar –xvf qipweb.tar  // 解压 tar包,再点击保存  理解构建就行了,还可以打开控制台输出看构建情况;

  1.8: 用脚本执行的话:

#!/bin/sh
# chkconfig:
# description:qinlin
# processname:qinlin
# serviceName 对应的压缩包名字 export serviceName=qipweb backupSuffix=`date +%Y%m%d%H%M%S`
echo '当前服务器时间:'${backupSuffix} d_deploy() {
echo '备份'${serviceName}'服务...'
cp -r /qinlin/data/${serviceName} /qinlin/backup/${serviceName}-${backupSuffix}
echo '删除'${serviceName}'安装包...'
rm -rf /qinlin/data/${serviceName}/*
echo '清除'${serviceName}'旧目录...'
rm -rf /qinlin/deploy/dist/
echo '解压'${serviceName}'安装包...'
tar -zxf /qinlin/deploy/${serviceName}.tar -C /qinlin/deploy/
echo '拷贝'${serviceName}'安装包...'
cp -r /qinlin/deploy/dist/* /qinlin/data/${serviceName}/
cp /qinlin/config/MP_verify_0Ll9VrXDh67K2IPx.txt /qinlin/data/${serviceName}/
}
case $1 in
deploy) d_deploy ;;
*) echo "require start|stop|restart|deploy" ;;
esac

  注意: 用这个脚本的话需要在这脚本所在位置执行命令 chmod +x config-run_qipweb.sh  将这脚本变成可执行文件,到时他自己就可以执行了;

  1.9: 构建打包

  

  

  结语: 有问题欢迎留言

    

Jenkins结合shell脚本实现(gitLab/gitHub)前端项目自动打包部署服务器的更多相关文章

  1. DevOps系列——Jenkins/Gitlab自动打包部署

    前面只说了DevOps的两个基础组件Jenkins和GitLab,客官也不要着急,我们玩就玩的深入一点,Gitlab和Jenkins的各种配置和 插件很多,也够啃一阵子的,不要照着操作一通就感觉万事大 ...

  2. 解放双手 | Jenkins + gitlab + maven 自动打包部署项目

    前言 记录 Jenkins + gitlab + maven 自动打包部署后端项目详细过程! 需求背景 不会偷懒的程序员不是好码农,传统的项目部署,有时候采用本地手动打包,再通过ssh传到服务器部署运 ...

  3. Github前端项目排名

      Github前端项目排名(2016-04-04) 一.前言 近几年前端技术日新月异,从 RequireJS 到 AngularJS 再到 React,似乎每天都有新的技术诞生.而大神们总能第一时间 ...

  4. Shell脚本,自动化发布tomcat项目【转载】

    Shell脚本,自动化发布tomcat项目脚本. 1. vko2c_auto_build_by_scp.sh 文件内容: #---------------------start------------ ...

  5. Shell脚本,自动化发布tomcat项目【转】

    Shell脚本,自动化发布tomcat项目脚本. 1. vko2c_auto_build_by_scp.sh 文件内容: #---------------------start------------ ...

  6. jenkins中shell脚本编写的两个注意点

    在jenkins的build中,如果用shell脚本的话,要记住有两个地方要注意 1.由于默认jenkins是使用/bin/bash -xe xxx.sh来调用脚本的,所以不同于日常写的脚本,任何一行 ...

  7. 解决Jenkins用shell脚本部署后,Jenkins自动杀掉启衍生出来的守护进程

    Jenkins部署java项目遇到的问题: 1.Jenkins执行构建后,需要手动执行startup.sh,站点才能正常访问 产生原因: shell脚本发布时,会衍生进程,Jenkins默认会自动杀掉 ...

  8. jenkins调用shell脚本 输出带颜色字体

    jenkins需要安装AnsiColor插件在构建环境项选择“color ansi console output” 安装插件AnsiColor shell 脚本相关颜色设置 echo -e " ...

  9. 使用jenkins进行前端项目自动部署

    前面的话 后端的nodeJS项目可以使用pm2进行自动部署,由于前端项目打包后是静态资源,不需要进程守护.一般地,前端项目使用jenkins来进行自动部署,包括打包.测试等一系列流程.本文将详细介绍j ...

随机推荐

  1. Angular4 组件间通讯

  2. kibana查询语法 使用教程

    1. 使用双引号包起来作为一个短语搜索: "like Gecko" 2. ? 匹配单个字符; * 匹配0到多个字符 例如:kiba?a, el*search ? * 不能用作第一个 ...

  3. 【Rice】Cultivar versus Variety

    From Cindy Haynes, Department of Horticulture   As a horticulturist, it is important that I use the ...

  4. Django 中 form 介绍

    目录 Form介绍 我们之前在HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来. 与此同时我们在好多场景下都需要对用户的输入做校验,比如校验用 ...

  5. React Native之配置开发环境

    安装前注意: 1)在Max OS X 10.11(El Capitan)版本中,homebrew在安装软件时可能会碰到/usr/local目录不可写的权限问题.可以使用下面的命令修复: sudo ch ...

  6. 原生js开发,无依赖、轻量级的现代浏览器图片懒加载插件,适合在移动端开发使用

    优势 1.原生js开发,不依赖任何框架或库 2.支持将各种宽高不一致的图片,自动剪切成默认图片的宽高 比如说你的默认图片是一张正方形的图片,则各种宽度高度不一样的图片,自动剪切成正方形. 完美解决移动 ...

  7. Let’s Encrypt 通配符证书申请配置

    首先你可以查看下官方提供的支持申请通配符证书的客户端列表:https://letsencrypt.org/docs/client-options/. 这些客户端支持最新的ACME v2接口,而这个接口 ...

  8. 【Diary】期中考+春游记

    4.22-4.24 期中考 周一 早上 赶来三楼电教厅自习,疯狂复习历史.想到下午考语文历史两大文科,不由得有点慌吧. 突然,沙雕体委说了一句: 下午考政治,你不背诵吗 下午 语文感觉正常发挥. 政治 ...

  9. 20175312 2018-2019-2 《Java程序设计》第6周学习总结

    20175312 2018-2019-2 <Java程序设计>第6周学习总结 教材学习内容总结 已依照蓝墨云班课的要求完成了第七.十章的学习,主要的学习渠道是PPT,和书的课后习题. 总结 ...

  10. Caffe+CUDA8.0+CuDNNv5.1+OpenCV3.1+Ubuntu14.04 配置参考文献 以及 常见编译问题总结

    Caffe + CUDA8.0 + CuDNNv5.1 + OpenCV3.1 + Ubuntu14.04  配置参考文献 ---- Wang Xiao  Anhui University  CVPR ...