自动化,CICDvue那点事儿

阿里云Centos+Jenkins+Vue自动部署

2019-12-19  本文已影响0人  不爱去冒险的少年y

一:按照官方文档下载对应软件和环境

下载
  1. 先要注意是否有对应的java环境
    java -version
[root@ java-1.8.0]# java -version
openjdk version "1.8.0_232"
OpenJDK Runtime Environment (build 1.8.0_232-b09)
OpenJDK 64-Bit Server VM (build 25.232-b09, mixed mode)

没有java环境的需要先安装Java环境
sudo yum install java

  1. 首先要先添加Jenkins源:
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
  1. 添加完成之后直接使用yum命令安装Jenkins:
    yum install jenkins

二 启动Jenkins

  1. 使用命令启动Jenkins:
    sudo service jenkins start (启动)
    sudo service jenkins stop (暂停)
[root@ ~]# service jenkins start
Starting jenkins (via systemctl):                          [  OK  ]
  1. 默认为8080端口,如需修改端口可修改配置文件,然后将Jenkins暂停后启动
    vim /etc/sysconfig/jenkins
    image.png
  2. 开防火墙端口
    如果没有对端口进行开发,服务器是拒绝外部访问的,
    systemctl status firewalld :查看防火墙的状态
  1. 在这里很多人会去网站上访问 你服务器ip:端口结果发现无法访问
    image.png
    其实是我们没有把端口加到阿里云的安全组里,是不是忘了,哈哈哈哈哈,
    image.png
  2. 访问Jenkins管理平台,嗒哒!


    image.png

三 配置Jenkins

1.找密码(我的方法独一无二)

  1. 安装插件(可以点击推荐的安装,或者自行选择安装,如果清楚自己要什么的可以自行选择安装,我就鼠标点错了点到推荐安装了┭┮﹏┭┮)
    image.png
    安装有点慢,间隙打个小广告欢迎访问我的垃圾博客
  2. 账号创建


    账号
  3. 安装NodeJs插件



    Avaliable 搜索 NodeJS,勾选 NodeJS,点击 Install without restart 安装


    image.png
  4. 配置 NodeJS 插件
  1. 发布配置(最最最最 重要)

1.5 Build Environment,勾选 Provide Node & npm bin/ folder to PATH

image.png
1.6 Build,点击 Add build step 下拉,选择 Execute shell
重要、重要、重要啦 shell命令
node -v #检测node版本(此条命令非必要)
npm -v #检测npm版本(此条命令非必要)
npm config set registry https://registry.npm.taobao.org #把npm源设置为淘宝源(这个你懂的)
npm config get registry #检测npm是否切换成功(此条命令非必要)
npm install #安装项目中的依赖
npm run build #打包
cd dist
rm -rf blog_vue.tar.gz #删除上次打包生成的压缩文件(一般建议备份,不要直接删除,这边测试就无所谓啦)
tar -zcvf blog_vue.tar.gz * #把生成的项目打包成压缩包,方便移动到项目部署目录
cd dist
#  备份历史版本
myPath="/home/vue_project_version/blog/"  #历史版本存放路径
tarName=$(date +%Y%m%d_%H%M%S)
# 这里的-d 参数判断$myPath是否存在
if [ ! -d $myPath ]; then
    mkdir $myPath
fi
cp blog_vue.tar.gz /home/vue_project_version/blog/    #版本拷贝
mv /home/vue_project_version/blog/blog_vue.tar.gz /home/vue_project_version/blog/blog_vue$tarName.tar.gz  #版本改名
cd /home/vue_project/blog/ #进入web项目根目录
mv /var/lib/jenkins/workspace/blog_vue/dist/blog_vue.tar.gz ./  #移动刚刚打包好的项目到web项目根目录
tar -zxvf blog_vue.tar.gz -C ./  #解压项目到dist目录
rm -rf blog_vue.tar.gz    #删除压缩包

注1:Jenkins默认目录centos: /var/lib/jenkins/workspace 在第一次构建的时候会创建这个文件夹,以后每次构建都会跳转到这个目录下你创建项目名字的目录下 例:项目名字为blog_vue,跳转的目录为/var/lib/jenkins/workspace/blog_vue/,暂且可认为其实目录
注2:知道有人想修改默认目录,如下:
我就不啰嗦了,有前贤
注2.5:有人想修改项目的工作目录,如下:

image.png

注3:建议shell命令 分开写,一小段一小段,注中注:分开的每段的开始目录为注2中所说的默认目录,切记切记 如下:

image.png

四. 构建项目(简单? 哈哈哈哈 坑来了)

  1. 回滚到项目路径下 点击Build Now,如图中2就会开始构建


    主面板
  2. 查看构建情况(我弄几个错误的看看)


    image.png

    修改对应问题得shell命令,就跟服务器操作一样一样的

  3. 正常的构建


    image.png

五.运行问题锦集:

1.文件权限问题:
mkdir: cannot create directory ‘/home/jenkins_workspace/blog_vue’: Permission denied
修改用户为root:

打开jenkins配置文件: vim /etc/sysconfig/jenkins
将原来的jenkins用户修改为 root用户: $JENKINS_USER="root"
修改Jenkins相关文件夹用户权限:

chown -R root:root /var/lib/jenkins
chown -R root:root /var/cache/jenkins
chown -R root:root /var/log/jenkins

重启Jenkins:systemctl restart jenkins
查看当前运行用户:ps -ef | grep jenkins

为当前用户添加权限

chown -R jenkins 文件路由

2.软件权限问题:
+ uwsgi --reload /etc/uwsgi/blog/uwsgi.pid
/tmp/jenkins6897959297090627100.sh: line 8: uwsgi: command not found
将服务器shell命令路径配置到Jenkins环境中

获取服务器的shell 命令路径:echo $PATH

[root@ myblog]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/local/python3/bin/:/root/bin

将路径复制到下图路径里,再运行


image.png
上一篇 下一篇

猜你喜欢

热点阅读