1、去年在自己的服务器上安装了jenkins,说用来自己研究一下jenkins自动化部署前端项目,jenkins安装好了,可是一直没管,最近终于研究了一下使用jenkins自动化部署,以此记录下来。

一、jenkins的安装

由于安装已经过去大半年时间了,具体步骤没有记录,可以到网上自行百度。

大致流程:

1、安装jdk

2、下载jenkins包并安装

3、修改jenkins端口(我用的8888端口)

4、防火墙开启对应端口(我的开启8888端口)

5、启动jenkins:service jenkins start

注:jenkins安装好后的默认账号是admin,默认密码在 /var/jenkins_home/secrets/initialAdminPassword 文件中,重置密码请自行百度

二、配置jenkins权限

安装完Jenkins后,还需要再配置一下Jenkins的root权限(提升执行shell命令的权限)

sudo vim /etc/sysconfig/jenkins
编辑状态中
JENKINS_USER="root"

修改 Jenkins 相关文件夹用户权限

chown -R root:root /var/lib/jenkins
chown -R root:root /var/cache/jenkins
chown -R root:root /var/log/jenkins

重启jenkins服务

service jenkins restart

三、jenkins安装插件

点击Dashboard 旁边的向下的黑色箭头(截图里看不到)-系统管理-插件管理

进入到该页面后,点击 可选插件,可以搜索并安装插件

需要安装如下插件:

NodeJS Plugin(nodejs环境)

Publish over SSH (用于执行构建后的操作)

Gitee Plugin(由于我用的是gitee管理代码,所以需要安装)

四、配置信息

点击左上角Dashborad -> 系统管理 -> 全局工具配置

4.1、配置git命令

4.2、配置node信息

这里需要选择和自己本地node一致的版本

 

4.3、配置gitee

证书令牌需要提前在gitee里配置,登录gitee账户,进入设置 -> 私人令牌 页面,点击生成新令牌

4.4、配置Publish over SSH

1、在自己的服务器上生产ssh key

ssh-keygen -t rsa -C "xxxx@xxx.com"

2、查看生成的公钥

cat ~/.ssh/id_rsa.pub

3、复制公钥到下图的位置

五、新建任务

5.1、添加任务和选择任务类型

点击左侧的 新建任务,打开如下页面,输入一个任务名称,选择“构建一个自由风格的软件项目”,点击确定

5.2、配置源码管理

5.3、配置构建触发器

5.4、配置构建环境

5.5、配置构建

增加构建步骤 选择 执行shell,并编写shell脚本:

继续点击:增加构建步骤  -> Send files or execute commands over SSH

执行sheel脚本,其实sheel脚本里的命令也就是先把nginx下的对应前端工程代码先进行备份,然后使用npm命令进行打包,生成dist目录,最后再把dist目录下的所有文件复制到nginx下对应的前端工程目录下,这样也就完成了前端工程部署。nginx下替换完前端工程代码后,不用重启nginx。

备注:该篇博客里记录的配置步骤有些粗糙,或许存在遗漏。不足之处敬请指教。

linux中使用jenkins自动部署前端工程的更多相关文章

  1. 使用jenkins自动部署java工程到jboss-eap6.3 -- 1.环境搭建

    使用jenkins自动部署java工程到jboss-eap6.3 -- 1.环境搭建 目录 使用jenkins自动部署java工程到jboss-eap6.3 -- 1.环境搭建 使用jenkins自动 ...

  2. jenkins自动部署maven工程到服务器----SSH+shell

    今天心情不是很美丽,玩笑话可能没那么多,还是回归正题 1.指定SSH端口.用户名.密码相关配置,我这里没有需要配置密钥啥的. 2.接下来再创建任务的时候,进行SSH配置: 3.看到这里,是不是很想打我 ...

  3. 关于gitlab+jenkins自动部署代码的实现

    本人PHP开发者,项目组大多是PHP,少量java项目. 因公司目前服务器和项目的管理比较混乱,与领导商量后,决定尝试 gitlab+jenkins自动化部署(之前用的svn FTP手动部署代码),解 ...

  4. 使用Jenkins自动部署博客

    title: 使用Jenkins自动部署博客 toc: true comment: true date: 2017-12-17 19:48:10 tags: ['Jenkins', 'CI'] cat ...

  5. Jenkins自动部署spring boot

    Jenkins自动部署spring boot 背景介绍 本公司属于微小型企业,初期业务量不高,所有程序都写在一个maven项目里面,不过是多模块开发. 分了login模块,service模块,cms模 ...

  6. Jenkins自动部署Tomcat项目

    Jenkins自动部署Tomcat项目 1.安装jenkins 插件 启动Jenkins,进入系统管理-插件管理: 选择Deploy to container Plugin 插件安装:

  7. 内存溢出导致jenkins自动部署到tomcat失败

    原文地址:http://openwares.net/java/jenkens_deploy_to_tomcat_error_of_outofmemoryerror.html jenkins自动部署wa ...

  8. jenkins自动部署代码到多台服务器

    下面讲一下如何通过一台jenkins服务器构建后将代码分发到其他的远程服务器,即jenkins自动部署代码到多台服务器. 1.下载 pulish over ssh 插件 2.系统管理 -> 系统 ...

  9. 15.自动部署web工程

    用maven自动部署web工程 在pom.xml中写入以下: <build> <!--最终名称,进入网页时有http://localhost:8080/xxx/--> < ...

  10. Linux中的定时自动执行功能(at,crontab)

    Linux中的定时自动执行功能(at,crontab) 概念 在Linux系统中,提供了两种提前对工作进行安排的方式 at 只执行一次 crontab 周期性重复执行 通过对这两个工具的应用可以让我们 ...

随机推荐

  1. sql server连接的基本使用(包含自身验证和连接Navicat)

    自身验证的步骤 1.先默认使用Windows身份验证连接上SQL Server数据库 2.右键连接名称,选择属性 来到这个界面: 3.选中左侧的安全性 4.将服务器身份验证修改为SQL Server和 ...

  2. 声网AI降噪测评系统初探

    作者:孟赛斯 前言 音频质量的优化是一个复杂的系统工程,而降噪是这个系统工程中的一个重要环节,传统的降噪技术经过几十年的发展已经陷入了瓶颈期,尤其是对非平稳噪声的抑制越来越不能满足新场景的需求.而近几 ...

  3. Cesium 后处理(Post Process)

    原文地址:https://blog.csdn.net/ls870061011/article/details/123910821 作者:GIS李胜 为实现三维模型的更炫.更酷.更美观,Cesium在1 ...

  4. salesforce零基础学习(一百一十四)Dynamic related list

    本篇参考: https://help.salesforce.com/s/articleView?id=release-notes.rn_forcecom_lab_dynamic_related_lis ...

  5. Xenomai 源码分析-Part I

    Xenomai Edition v3.0.5 xenomai_init() static int __init xenomai_init(void) 源码分析 setup_init_state // ...

  6. 手机号码归属地 API 实现防止骚扰电话,看这一篇就够了(内附设计思路和代码)

     在当今时代,骚扰电话已经成为了很多人日常生活中的一个常见问题,严重影响了人们的工作和生活. 为了避免这种情况的发生,企业和机构可以采用手机号码归属地 API,以提供更好的电话服务,减少骚扰电话的出现 ...

  7. Django笔记六之外键ForeignKey介绍

    这一篇笔记介绍 Django 系统 model 的外键处理,ForeignKey 以及相应的处理方法. 这是一种一对多的字段类型,表示两张表之间的关联关系. 本篇笔记的目录如下: on_delete ...

  8. 为什么HashMap查找比List快很多?

    做两数之和这道题目时,引发了一个思考: 为什么两者运行时间相差如此之大???好残忍,我List比你HashMap到底差在哪**** 于是我一顿查资料.... 战犯哈希算法登场 哈希算法会根据你要存入的 ...

  9. 探究平台化设计的核心思想和Lattice的设计原则

    一. 平台对业务敏捷支撑的挑战 早期阿里的交易中台遇到了一些挑战,这个在毗卢的博客中有提到,主要遇到了这些问题:新小业务都有一个成长规律,在早期业务模式验证阶段,需要的玩法比较简单,希望能频繁的发布快 ...

  10. 移动端网页--better-scroll容易采坑合集

    移动端网页--better-scroll容易采坑合集 一.better-scroll源码bug,浏览器需要刷新一次才能正常滑动 在new BScroll时,在options中加入 mouseWheel ...