工欲善其事,必先利其器
环境:CentOS 7.x 提前安装好docker 和docker-compose java环境
一、创建jenkins.yml文件并配置相关内容
我把创建的docker容器都放在了/home/docker-compose下
在docker-compose下创建jenkins.yml。将下面的配置文件粘贴进去
version: '3.7'
services:
jenkins:
image: jenkins/jenkins:lts
container_name: jenkins
environment:
- TZ=Asia/Shanghai
volumes:
- /usr/local/jenkins/jenkins_home:/var/jenkins_home
- /var/run/docker.sock:/var/run/docker.sock
- /usr/bin/docker:/usr/bin/docker
- /usr/lib/x86_64-linux-gnu/libltdl.so.7:/usr/lib/x86_64-linux-gnu/libltdl.so.7
ports:
- "8088:8080"
expose:
- "8088"
- "50000"
privileged: true
user: root
restart: always
如果使用的是云服务器配置文件中的端口记得暴露
在ocker-compose目录下执行docker-compose -f jenkins up -d
等待执行完成
执行docker ps 观察jenkins是否已经启动
如果已经启动,在浏览器中输入 ip+端口 即可访问,出现下面的页面
获取管理员密码:
执行:进入到jenkins容器内,获取密码
docker exec -it jenkins /bin/bash
cat /var/jenkins_home/secrets/initialAdminPassword
进入到新手入门,安装推荐插件(如果没有进入到新手入门页面,点击一下题头 Dashboard)
然后开始安装插件,等待几分钟安装完成之后,设置自己的管理员密码,然后就可以使用jenkins了,到此安装完成,下面开始安装需要的特定插件
然后安装两个推荐的插件 Rebuilder
SafeRestart
二、在jenkins中安装nodeJs插件
因为我们的项目是要用到node打包的,所以先在jenkins中安装nodeJs插件,安装后进入全局工具配置,配置一个我们要用到的node版本。
搜索nodeJs 选中,点击立即安装, 安装完成之后记得重启jenkins
开始全局配置node
只有上一步正确安装node,在这一步才会出现nodeJs选项,别名你可以根据自己的情况随便写,后面会用到
三、 开始创建一个任务
到这里已经实现了本地代码提交到github,然后在jenkins上点击构建,可以拉取代码并且打包,下一步实现打包后的dist目录放到目标服务器上。
如果有报错,检查node是否正常安装,java环境是否正常配置,最后又java环境配置说明
四、安装Publish Over SSH 插件,我们将通过这个工具实现服务器部署功能。
在安装插件里安装Publish Over SSH
系统管理->系统设置->Publish over SSH->SSH Servers
在项目的配置里配置构建后操作
1)点击 增加构建后操作步骤
2)选择 Send build artifacts over SSH
然后保存,可以进行构建了,点开工作空间,发现多了打包之后的问题,进到服务器在目录下可以看到打包之后的文件
------ 到此前端项目半自动打包,半自动构建、半自动部署就完成了 ---------
下面进入持续构建、持续部署
五、接下来实现开发本地push代码到github上后,触发Webhook,jenkins自动执行构建。
1、jebkons中进入项目的配置
2.github配置Webhook
选择github项目中的Settings->Webhooks>add webhook
配置方式按上图红框中的格式,选择在push代码时触发webhook,成功后会在下方出现一个绿色的小勾勾
可以测试修改代码,观察是否会有自动构建和自动部署
到此完成了jenkins的自动构建和自动部署
java环境配置补充:
首先输入 :java -version 确定java是否已经安装,如果未安装跟着步骤走
1、下载java包:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
下载之后传入服务器中,放在/usr/local目录下
解压:tar -zxvf jdk-8u271-linux-x64.tar.gz
2、设置环境变量 vim /etc/profile
把下面的话粘贴进去
#java environment 第一种写法
export JAVA_HOME=/usr/jdk1.8.0_151
export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
export PATH=$PATH:${JAVA_HOME}/bin
#java environment 第二种写法(二选一)
export JAVA_HOME=/usr/local/jdk1.8.0_151
export JRE_HOME=/usr/local/jdk1.8.0_151/jre
export PATH=$PATH:/usr/local/jdk1.8.0_151/bin
export CLASSPATH=./:$JAVA_HOME/lib:$JRE_HOME/lib
3、更新配置文件 source /etc/profile
4、查看版本好 java -version