Jekins上部署前端环境

安装Node

(1)创建文件夹,下载解压node

wget https://nodejs.org/dist/v10.15.0/node-v10.15.0-linux-x64.tar.xz    // 下载
tar xf  node-v10.15.0-linux-x64.tar.xz       // 解压

(2)找到修改/etc/profile文件

vi  编辑 i 开启编辑模式   esc保存     shift+:wq
export NODE_HOME=/usr/local/node  //Node所在路径
export PATH=$NODE_HOME/bin:$PATH

执行命令 source /etc/profile 及在当前控制台更新

(3)node -v 看是否安装成功

git配置

(1)生成,照提示完成三次回车 zzz@ziasset.com

ssh-keygen -t rsa -f ~/.ssh/id_rsa_ziasset -C "zzz@ziasset.com"

(2)公钥配置到git上

(3)配置 .ssh/config

Host ziasset
HostName library.ziasset.com
User zzz
Port 22022
IdentityFile ~/.ssh/id_rsa_ziasset
PreferredAuthentications publickey

(4)拉取项目代码

打包

(1)更新,install

git pull
npm install

如果遇到报错

# npm WARN ajv-keywords@3.2.0 requires a peer of ajv@^6.0.0 but none is installed
    # 手动安装ajv即可
    npm install ajv@^6.0.0
# npm WARN fsevents@1.2.0 had bundled
    # mac下需要 fsevents,这里是在windows环境,所以可以忽略这个警告,对你没什么影响
# Error: EACCES: permission denied, mkdir './node_modules/node-sass/.node
    npm install node-sass --unsafe-perm --save-dev
npm run build  # 打包成功!

编写脚本

#!/bin/bash
# 参数验证
if [ $# -ne 2 ];
then
        echo '======>参数错误 $1:git项目名,$2:发布目录'
        echo '======>    eg: travelweb travel-web'
    exit
fi
Home=/opt/deploy/web
#Project=travelweb
Project=$1
# 发布目录
#Dir=travel-web
Dir=$2
​
cd $Home/$Project
echo "进入 `pwd -P`"
git pull
NODE_HOME=/opt/node/node-v10.15.0-linux-x64
export PATH=$PATH:$NODE_HOME/bin
/opt/node/node-v10.15.0-linux-x64/bin/npm install
rm -rf dist
/opt/node/node-v10.15.0-linux-x64/bin/npm run build
​
if [ $? -ne 0 ]; then
    echo "======> 打包失败 exit......"
        exit
fi
echo "======> 打包成功,开始发布到nginx"
cp -rp dist/* /usr/local/webserver/nginx/html/$Dir

jenkins 配置

(1)新建任务
在这里插入图片描述
(2)构建自由风格的软件项目
在这里插入图片描述
执行shell

/opt/deploy/web/deploy-dev.sh 参数1 参数2
参数1 : git项目名称 
参数2 : 发布nginx目录名称

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值