jenkins部署项目不再那么神秘

433 阅读3分钟

前言

卧槽又要发版,你烦不烦,这话又从耳边吹过,今天我们就来使用jenkins远离卧槽。jenkins的好处就是每次部署代码,只需要登录jenkins构建需要部署的分支就好。

一:前期准备东西

  • 1: 服务器,可用腾讯云centos7
  • 2: github账号和项目(可用其他如码云之类的)
  • 3: 服务器安装jdk
  • 4: 服务器安装nginx
  • 5:服务器安装jenkins

二:环境的配置

  • 1:git的安装;
yum install git

安装好后界面

  • 2:java中jdk安装,我安装的是1.8.0_181;
  • 3:jenkins的安装;
  • 4: 下载依赖
wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo

  • 5:导入秘钥
rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
  • 6:安装jenkins
yum install jenkins
  • 7:启动jenkins
service jenkins start
service nginx restart
  • 8:启动jenkins出现Job for jenkins.service failed because the control process exited with error code ######就是没有找到java文件,需要自己把java文件地址复制过去,需要配置jenkins的java路径
  • 9:jenkins默认的是8080端口,可能会与其他启动的端口冲突.修改默认端口;在Jenkins的安装路径,启动linux窗口命令:
java -jar jenkins.war --ajp13Port=-1 --httpPort=8081

出现如下图所示,表示端口修改成功

Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation:

会生成一串字符串,等下解锁jenkins用到:

ef18d814520e4f36bc1c0a3545450e6941dbf
This may also be found at: /root/.jenkins/secrets/initialAdminPassword

  • 10: jenkins修改默认端口号,来到jenkins目录下
# vim /etc/sysconfig/jenkins

找到 JENKINS_PORT="8080" ,JENKINS_AJP_PORT="8081",分别修改成你需要的端口号。

service jenkins restart

  • 11: linux打开防火墙的端口

三:jenkins图形界面配置

  • 1:启动 jenkins 浏览器输入 http://ip:8081, ip:服务器外网ip地址 例:192.162.11.77:8081
  • 2:等待一会之后 提示你输入管理员密码(上面保存的字符串)
  • 3:安装插件
  • 4:点击推荐安装,耐心等待,会出现
  • 5:创建用户
  • 6:配置
  • 7:重新登录界面
  • 8 配置插件Node,Rebuilder,SafeRestart
    点击插件管理

四:新建任务

  • 1:新建一个项目
  • 2:配置github项目jenkins工作台->系统管理,找到GitHub服务器,添加 “GitHub Server”
  • 3:Jenkins新建项目中源码管理使用Git时遇到如下问题:
Failed to connect to repository : Error performing command: git ls-remote -h http://192.168.1.77/finance/AMS-Server.git HEAD

需要配置账号密码

  • 4:配置github的webhook地址 webhook通知jenkins时的请求地址,这样开发向github推送代码后,github就能够通过该地址通知jenkins当前需要进行项目部署。进入构建用到的项目,在项目主页面点击右上角的Settings,再点击左侧Webhooks,然后点击Add webhook。如下图所示:
假设登录jenkins的地址是: http://192.168.1.77:8080
那么webhook地址就是: http://192.168.1.77:8080/github-webhook
click Add webhook 完成添加

  • 5:配置node
  • 6:配置node脚本
  • 7:构建版本出现可能卡住,那是你的linux文件夹权限出现问题,由于文件夹是root权限建立的,所以需改成jenkins用户权限
  • 8:构建版本出现node.js安装不下
Unpacking https://nodejs.org/dist/v12.13.0/node-v12.13.0-linux-x64.tar.gz to /var/jenkins_home/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/NODE_JS on Jenkins

  • 9:需要手动,本地linux在全局工具配置node就好
  • 10:再次构建
  • 11:linux查看构建成功,编译后放到指定目录上

(ps:到这里jenkins神秘面纱被我们解开了,如何用nginx部署到这个目录来访问。请看我之前的其他篇章,欢迎关注我的公众号。。。)