Jenkins安装,安装之前需要配置好jdk

  1. 下载Jenkins安装
    https://jenkins.io/zh/download/
  2. 方式有好几种,本文通过rpm方式进行安装
rpm -ivh jenkins-2.190.3-1.1.noarch.rpm

修改Jenkins配置

vim /etc/sysconfig/jenkins

修改内容

修改内容如下:
#用户
JENKINS_USER="root" 
#端口号
JENKINS_PORT="8899"
  1. 启动服务
systemctl start jenkins
  1. 访问Jenkins,需要防火墙放行端口
http://ip:8899/
  1. 获取并输入admin账户密码
cat /var/lib/jenkins/secrets/initialAdminPassword
  1. 点击安装推荐插件
  2. Linux 安装 jenkins 开机自启 jenkins自动部署linux_运维

  3. 添加一个管理员账户,并进入Jenkins后台
  4. Linux 安装 jenkins 开机自启 jenkins自动部署linux_运维_02


  5. Linux 安装 jenkins 开机自启 jenkins自动部署linux_jenkins_03

  6. Jenkins插件管理
  7. Linux 安装 jenkins 开机自启 jenkins自动部署linux_Jenkins_04

Linux 安装 jenkins 开机自启 jenkins自动部署linux_Jenkins_05


10. 搜索插件,使用的插件有Gitee,nodejs,maven

Linux 安装 jenkins 开机自启 jenkins自动部署linux_nginx_06


Linux 安装 jenkins 开机自启 jenkins自动部署linux_nginx_07


11. 添加Gitee(码云)链接配置(系统管理->系统配置->Gitee配置)

Linux 安装 jenkins 开机自启 jenkins自动部署linux_运维_08


Linux 安装 jenkins 开机自启 jenkins自动部署linux_linux_09


Linux 安装 jenkins 开机自启 jenkins自动部署linux_jenkins_10


Linux 安装 jenkins 开机自启 jenkins自动部署linux_linux_11


12. 然后点击 “添加” 即可。添加之后, 点击测试链接, 显示成功ok。

如果爆红提示没有权限,检查上一步,你的帐密输错了没。

Linux 安装 jenkins 开机自启 jenkins自动部署linux_jenkins_12

13. 全局配置

Linux 安装 jenkins 开机自启 jenkins自动部署linux_linux_13


Linux 安装 jenkins 开机自启 jenkins自动部署linux_linux_14

  1. 构建vue项目,创建一个自由风格的任务,命名test,按照图片配置选项






  2. 脚本内容
npm install
rm -rf ./dist/*    #删除上一次构建在dist目录产生的文件和目录
npm run build:prod    #打包vue项目成web服务器可执行的文件,第一次打包会生成dist目录,里面包含index.html和static目录
cd dist    #进入dist目录
# 将dist中的文件打包
tar -zcvf dist.tar.gz * 
#删除nginx中之前的压缩包
rm -rf /usr/local/nginx/dist.tar.gz
#将新的压缩包复制到nginx中
scp dist.tar.gz /usr/local/nginx/
#删除之前的dist,这个根据nginx中的的地址填写,有的nginx中默认访问的是html文件夹
rm -rf /usr/local/nginx/html/dist/*
#解压文件
tar -xf /usr/local/nginx/dist.tar.gz -C /usr/local/nginx/html/dist/
#重启nginx
systemctl restart nginx
  1. Gitee(码云)配置,注意,如果是内网的ip这里设置是不能成功的

Linux 安装 jenkins 开机自启 jenkins自动部署linux_运维_15


Linux 安装 jenkins 开机自启 jenkins自动部署linux_linux_16


Linux 安装 jenkins 开机自启 jenkins自动部署linux_nginx_17


17. 如果是内网IP,可以在构建触发器中选择Build periodically选项,通过设置固定时间进行重构

Linux 安装 jenkins 开机自启 jenkins自动部署linux_运维_18

  1. 有可能遇到的问题
  2. 报错是这样的, 说明没有用户名密码,解决办法

解决方案
执行 git config --global credential.helper store 命令
然后git push origin master // master就是分支的名字
会让你输入用户名和密码,这时你输入就好了,
然后下次再git push 或者/pull 的时候就不用密码了

  1. 创建springboot项目
  2. 后面的步骤和上面类似,不同点如下
  3. start.sh的内容,将脚本放到/usr/bin目录下,方便全局执行
#!/bin/bash
# 加载环境变量
source /etc/profile

#部署的地址,将jar包上传到deploy
deploy_path="/var/lib/jenkins/workspace/rent-after/rent-admin/target/"
#日志名称
log_name="test-$(date +%Y-%m-%d).log"
#运行环境
#enviroment="prod"

back(){
  if [ ! -d $deploy_path ]; then
    mkdir $deploy_path
    echo "文件夹创建成功!"
  elif [ ! -f $log_name ]; then
    touch $log_name
    echo "日志文件创建成功!"
  fi
}

back
#启动方法
start(){
  echo "进入启动函数!"
  # 表示start方法后跟的第一个参数
  APP_NAME="$1";
#判断${APP_NAME}文件是否存在
  if [ ! -f $deploy_path$APP_NAME ];then
      echo "启动文件地址:$deploy_path$APP_NAME"
      echo "没有找到$APP_NAME启动文件!"
      return
  fi

  #进程是否启动,没启动直接启动,启动了就先关闭再重启,awk '{print $2}' 的作用就是打印(print)出第二列的内容,第二列正好是PID
  pid=$(ps -ef | grep -v 'grep' | egrep $APP_NAME| awk '{print $2}')
  # [ -z STRING ] 如果STRING的长度为零则返回为真,即空是真
  #如果不存在返回1,存在返回0
  if [ -z "${pid}" ]; then
    #不存在,直接启动
   $deploy_path$APP_NAME > /dev/null 2>&1 &
    nohup java -jar $deploy_path$APP_NAME  > $deploy_path$log_name 2>&1 &
    echo "不存在进程,项目启动成功!"
  else
    echo "项目$1已经启动,进程pid是${pid}!"
    echo "现在开始关闭进程,重启$APP_NAME!"
    for i in $pid
    do
            kill -9 $i
            echo "杀死进程$i成功!"
    done
    nohup java -jar $deploy_path$APP_NAME  > $deploy_path$log_name 2>&1 &
    echo "项目启动成功!"
  fi
}
# jar包的名称,对应start函数中的$1
start rent-admin.jar
  1. 修改脚本的执行权限
chmod 777 /usr/bin/start.sh