windows 安装jenkins运行发布vue项目到linux服务器

2023-04-12

文章目录

  • 背景
  • 安装jenkins
  • 安装插件
    • 安装nodej插件
    • Publish over SSH
  • 系统配置
    • Publish over SSH
  • 全局工具配置
    • 设置node
  • 构建项目
    • 创建一个freestyle的项目
    • Discard old builds
    • git命令报错Host key verification failed
    • Build
背景

由于服务器上运行jenkins很卡,所以对于小公司而言,就不在服务器上跑jenkins,这两天公司正好有一台闲置的windows主机。就在这个上面尝试安装jenkins来进行自动打包,并且发布到linux服务器。


安装jenkins

安装步骤就不多说了,网上一大堆。


安装插件


安装nodej插件




Publish over SSH



系统配置


Publish over SSH


发布到远程服务器的时候要用,涉及到密钥,我就不截图了。
这里遇到一个巨坑,测试连接的时候报了:


jenkins.plugins.publish_over.BapPublisherException: Failed to add SSH key. Message [invalid privatekey: [B@60373f7]


因为我们生成密钥的openssh的版本过高的原因,而版本在检验密钥时还不支持这种格式。
通过指定格式来生成


ssh-keygen -m PEM -t rsa -b 4096

生成后阿里云ecs感觉还不奏效,可能是我设置了阿里云密钥对才能访问,绑定以后要重启才能生效

也可以试试把公钥写到.ssh 文件夹下的:authorized_keys


全局工具配置


设置node



构建项目

创建一个freestyle的项目




Discard old builds


我选择保留5天数据,最大保存10次build。我觉得够了,不需要更多了。


git命令报错Host key verification failed


处理git的时候遇到了Host key verification failed,Windows安装的jenkins,登录账户打开git bash,执行git pull等一系列命令,是可以成功执行,但是在Jenkins的网页中执行git的命令时,提示


d:\src>git pull 
Host key verification failed.
fatal: Could not read from remote repository.
 
Please make sure you have the correct access rights
and the repository exists.

原因:Jenkins网页登录时,ssh连接使用的是Jenkins自身的账户,并不是我们登录电脑所使用的的账户,该账户下并没有ssh连接所需要的rsa文件,


解决方法:


成功执行git pull等命令的账户,在C:\Users\xxxxxx.ssh目录下(xxxxxx是登录电脑的用户名,不是git的用户名),会有id_rsa,id_rsa.pub,known_hosts文件,把这3个文件拷贝到C:\Windows\System32\config\systemprofile.ssh目录下,再执行jenkins就OK了


Build


即使是在windows的电脑上,执行shell也可以。如果build出错,可以先在workspace里面尝试用npm 或 yarn install一下,一般也会出错,可能是node版本问题、或者是package.json里面的某几个modual带有^导致。


\dist**表示该传送该目录下所有文件、目录
\dist*表示传送该目录下所有文件

sh脚本如下:


current=`date "+%Y-%m-%d%H:%M:%S"`
mv /opt/running/wms/dist  /opt/running/wms/dist+"$current"
mv /root/dist  /opt/running/wms/dist

本文仅代表作者观点,版权归原创者所有,如需转载请在文中注明来源及作者名字。

免责声明:本文系转载编辑文章,仅作分享之用。如分享内容、图片侵犯到您的版权或非授权发布,请及时与我们联系进行审核处理或删除,您可以发送材料至邮箱:service@tojoy.com