jenkins发布文件到远程服务器

打印 上一主题 下一主题

主题 583|帖子 583|积分 1749

jenkins安装

安装教程
后台启动脚本

创建脚本:start_jenkins.sh
  1. ls
  2. for pid in $(ps -ef|grep jenkins.war|grep -v grep|cut -c 10-16);
  3. do
  4.     echo $pid;
  5.     kill -9 $pid;
  6. done;
  7. nohup  java -Djava.awt.headless=true -jar /usr/local/jenkins/jenkins.war --webroot=/var/cache/jenkins/war --httpPort=8080 > test.log 2>& 1 &
复制代码
关于权限

可以使用插件:Role-based Authorization Strategy
安装成功后,按照如下图配置:
基础配置


角色管理


管理角色


项目角色

留意:正则问题

授权


关于配置(Manage Jenkins)

工具(Tools)

由于我这里是,在服务器安装了必要的工具,如jdk,maven,git,nodejs等,以是这里要配置自定义路径,如果选择自动安装也可以。
安装工具之后,只管把下令行全都配置进系统变量中,/etc/profile:

由于必要前端打包,以是可以提前全局举行一些前端的下令的配置,这样就不必要配置进每个项目中了,比方,pnpm:
  1. npm config set registry https://registry.npmjs.org
  2. npm install -g pnpm
复制代码
Maven 配置


JDK安装


Git 安装


Maven 安装


系统配置(System),重点

由于,不是当地发布,以是必要将打包好的文件,上传到远程服务器(连接可以使用暗码,也可以使用ssh-key),此处使用的是ssh-key。
内里有一些比方管理员邮件,或者其他非重要信息,就不贴图了。。。
配置入口如下:

Publish over SSH(重点)

这里的配置是重点,主要配置Jenkins服务器的key和远程服务器的相关信息
安装插件:Publish Over SSH
Jenkins本机的信息

生成ssh-key的时候,如果有暗码,可以将暗码填入到“Passphrase”,否则可以将生成的“私钥”填入“Key”中,格式如下:

SSH Servers

这里配置远程的服务器
可以看到没有任何Key或者暗码的填写,放心,Jenkins会帮我们搞定一切,如果不想用key的方式,各人可以去“高级”内里,把“Use password authentication, or use a different key”勾上,自己去填写服务器的暗码等信息,固然内里还有一些服务器的基础配置信息,都是默认的。
Remote Directory:远程文件夹,默认会把文件传输到这个文件夹底下

Ok,到这里,Jenkins相关的全部配置就完成了。。。
嗯?是不是忘了一件很重要的事,Jenkins跟服务器连接的key去哪里了?
So,接下来的重点就是在key的生成

System-Publish over SSH 的相关key

确保权限

查看Jenkins用户的权限是否精确:vim /etc/passwd

生成本机的公钥,私钥,远程服务器的key

默认的文件夹应该是在:/var/lib/jenkins/.ssh,生成的一些文件可以在这里查看,上面配置的Jenkins服务器的秘钥,就在文件"id_rsa"中

生成秘钥

  1. ssh-keygen -t rsa
复制代码
生成远程服务器的key

与远程服务器免密,这一次必要输入暗码,如有多个,就实行多次,会把key写入到默认的known_hosts中
  1. ssh-copy-id -i id_rsa.pub 用户名@服务器IP
复制代码
OK,OK,到这里真的全部基础配置都完成了,背面就舒畅的去打包部署吧。。。哈哈哈,牛马拿到一个趁手的工具,也是相称开心的
后端打包部署

源码管理


Build Steps


构建后操作

下面的是Jenkins服务器中的操作和配置

Exec command是远程服务器中要实行的下令
app2是我在Publish over SSH 中配置的远程服务器的默认文件夹,test代表的是在app2中还会创建一个远程文件夹
   下面的下令很重要:
source /etc/profile
由于可能连接已往后会丢失下令的情况,以是必要刷新一次系统变量
  

前端打包部署

源码管理

和后端的一样,都是配置git信息
Build Steps


构建后操作

下面的是Jenkins服务器中的操作和配置

Exec command是远程服务器中要实行的下令
html2是我在Publish over SSH 中配置的远程服务器的默认文件夹,test代表的是在html2中还会创建一个远程文件夹

OK,OK,OK,这次是真的真的结束了。。。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

大连密封材料

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表