jenkins部署前端node项目实例

Jenkins 分发文件用到rsync命令
 
在 /etc/passwd中 修改 jenkins 为 /bin/bash
jenkins:x:494:494:Jenkins Automation Server:/var/lib/jenkins:/bin/bash
 
在客户端 
/etc/ssh/ssh_config 中修改

StrictHostKeyChecking no   (去掉注释)

 

在 jenkins 服务器切换到 jenkins账户  su - jenkins

创建密钥

 ssh-keygen

Your identification has been saved in /var/lib/jenkins/.ssh/id_rsa.
Your public key has been saved in /var/lib/jenkins/.ssh/id_rsa.pub.

将公钥内容 id_rsa.pub 拷贝到客户端 /root/.ssh/authorized_keys 文件内 

将root账户公钥 id_rsa.pub也拷贝到客户端   /root/.ssh/authorized_keys 文件内 

 

jenkins 具体配置

添加任务 

general 中 描述写 发布 ***** node 代码

使用自定义的工作空间    /var/lib/jenkins/workspace/df-front

 

源码管理:

设置 git  仓库地址 , 账户密码 ,仓库分支

 

在构建  execute shell    分发文件到相应的服务器,并在对端服务器执行脚本npm i构建和重启服务。

 

jenkins 服务器上脚本内容:

复制代码
cat /data/sh/startnpm.sh 
#!/bin/bash

cd /root/web


source /etc/profile

/usr/local/node-8.11.1/bin/npm i &&   EGG_SERVER_ENV=dev npm run start 

sleep 5
nodeport=` netstat -lntp|grep "8000"|awk '{print $4}'|awk -F":" '{print $4}'`
echo $nodeport

if [ "$nodeport" ];then
          echo -e "\033[32m[ node process start success on dev env !  ]\033[0m"
   
fi
复制代码

 

 

 

posted @   Oops!#  阅读(348)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
点击右上角即可分享
微信分享提示