Jenkins环境搭建和部署项目的过程
安装部署docker jenkins 环境
创建一个文件夹 用于存放jenkins相关配置
mkdir /Users/mengfanxiao/docker/jenkins
下载docker jenkins镜像
docker pull jenkins/jenkins
当前版本:Jenkins 2.243
启动镜像
docker run -d -p 8080:8080 -p 50000:50000 --name jenkins --privileged=true -v /Users/mengfanxiao/docker/jenkins:/var/jenkins_home jenkins/jenkins
访问jenkins
http://localhost:8080/
PS : 如果一直在Please wait while Jenkins is getting ready to work...页面,资源访问过慢加载不出来
解决方法
找到/Users/mengfanxiao/docker/jenkins目录下的
hudson.model.UpdateCenter.xml文件,
将https://updates.jenkins.io/update-center.json
替换为http://mirror.xmission.com/jenkins/updates/update-center.json
然后重启启动docker jenkins
登陆账号
输入密码
启动命令中有一个文件映射 将docker中的配置文件映射到本地电脑
即 -v /Users/mengfanxiao/docker/jenkins:/var/jenkins_home jenkins/jenkins
既然 docker jenkins已经启动 那么配置文件也从docker映射到本地一份了
由上面[输入密码]截图可以看要去/var/jenkins_home/secrets/initialAdminPassword文件中找初始密码
(发现截图上的目录少了一个jenkins)
那么只需要从 本地文件 /Users/mengfanxiao/docker/jenkins/secrets/initialAdminPassword 即可
安装插件
这里选择安装推荐的插件
PS : 这里等待时间太久 如何解决?
解决办法 :
修改更新配置源
找到/Users/mengfanxiao/docker/jenkins/updates/default.json
把 "www.google.com” 改成 "http://www.baidu.com/"
把 "updates.jenkins-ci.org/download" 替换成 "mirrors.tuna.tsinghua.edu.cn/jenkins"
快速更新的办法
使用vim的命令
替换所有插件下载的url
:1,$s/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g
替换连接测试url
:1,$s/http:\/\/www.google.com/https:\/\/www.baidu.com/g
注意:进入vim先输入:然后再粘贴上边的:后边的命令,注意不要写两个冒号!修改完成保存退出:wq
心理PS:速度卡卡的快啊(留下了幸福的眼泪)
创建用户
创建好用户之后 就可以进入到首页了
检查并修复插件
查看失败插件
打开系统管理页面 如果有安装失败的插件 则会显示(失败插件名称及原因)
查看已安装的插件
http://localhost:8080/pluginManager/installed
报红的则是安装失败的插件
功能不全
假如 如果在创建任务的时候没有[构建一个maven项目]选项 则需要安装maven插件
如何安装插件
以上面的功能不全-没有[构建maven项目]为例
点开可选插件 输入maven
http://localhost:8080/pluginManager/available
安装后的效果
重启使得刚刚安装的插件生效
如果插件有了改变 则已安装插件页面的最下面有一个重启的提示,
重启了之后 刚刚已安装的插件就会生效
通过jenkins部署项目
创建一个任务
General配置
Git配置
git信息配置
访问git的账号配置
指定分支的含义是 获取指定git地址下面的指定分支进行代码部署
build
这里需要配置下maven
clean package -U -Dmaven.test.skip=true
-U表示强制更新
Post Steps
在这一步之前的操作是 jenkins通过maven将指定的项目编译打jar或war包或其他形式的
这一步是 访问指定的服务器 在指定的路径下面 执行指定的脚本 启动jar或war或其他
所以需要先配置下服务器: 系统管理-系统配置-SSH Server
并测试下是否可以连接
源文件 表示当前项目编译打包之后是jar包还是war包
可执行文件
root@iZuf6heduaqlfxz2wj9zc3Z:~# cat /home/jenkins/vote-api/vote-api-test.sh
#!/bin/bash
# 配置jdk环境
export JAVA_HOME=/usr/local/software/jdk1.8.0_141
export JAR_HOME=$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
# 配置项目名称
APP_NAME=vote-api.jar
#判断进程是否存在 若存在 则kill
is_exist(){
pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}' `
#如果不存在返回1,存在返回0
if [ -z "${pid}" ]; then
return 1
else
return 0
fi
}
is_exist
if [ $? -eq "0" ]; then
kill -9 $pid
else
echo "${APP_NAME} is not running"
fi
# 删除上一次编译打包后的文件
rm -rf /home/test-vote-api/*.jar
# 将jenkins打包编译之后的文件复制到指定位置
cp -rf /home/jenkins/vote-api/target/*.jar /home/test-vote-api/${APP_NAME}
# 启动项目
nohup java -jar -Dspring.profiles.active=dev /home/test-vote-api/${APP_NAME} -Xms256m -Xmx512m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m --server.port=8082 >/home/test-vote-api/logs/vote-api.log 2>&1 &
echo "程序已启动..."
# 进程是否存在
is_exist
if [ $? -eq "0" ]; then
echo "${APP_NAME} is running. pid is ${pid} "
else
echo "${APP_NAME} is not running."
fi
exit
注意点
上述脚本中的文件夹先创建好
mkdir /home/test-vote-api/logs
PS:文件访问权限问题
如果jenkins在配置server的时候访问用户不是root用户
比如是jenkins用户
查看文件的访问权限 上面是当前用户可以读写可执行、当前用户所属于用户组可读可写可执行、其他用户可读可写可执行只有这样 jenkins用户才可以访问如果不是这样 则需要 chmod 777 /home/jenkins -R 设置下文件夹访问权限
邮件通知项目部署情况
构建
后记
至此,已经说完了jenkins环境搭建过程和如何通过jenkins部署一个项目的过程,
我就不演示了构建的过程了 因为我用的公司的服务器,担心内存不够,把公司运行的项目给搞停掉
Jenkins环境搭建和部署项目的过程相关推荐
- 部署环境_Jenkins环境搭建和部署项目的过程
安装部署docker jenkins 环境 创建一个文件夹 用于存放jenkins相关配置 mkdir /Users/mengfanxiao/docker/jenkins 下载docker jenki ...
- Jenkins 之 单节点 对接GitHub搭建自动化部署项目环境 与 实战测试 (三)
Jenkins 之 单节点 对接GitHub搭建自动化部署项目环境 与 实战测试 (三) 目录 Jenkins 之 单节点 搭建自动化部署项目环境 与 实战测试 (三) Jenkins 服务器 环境 ...
- git maven 一键部署_Jenkins Git Maven搭建自动化部署项目环境 邮件通知
简介 折腾了两个晚上,趁着今晚比较有空,把jenkins+git+maven搭建自动化部署项目环境搭建的过程记录一下,这里我把github作为git的远程仓库(https://github.com/j ...
- Window环境下的Git+GitHub+jenkins+Tomcat实现自动部署项目并发送构建邮件
Git+GitHub+jenkins+Tomcat实现自动部署项目 我们这里要实现的效果是:团队通过Git把项目push到GitHub上去,然后Jenkins通过GitHub的webhook(钩子)来 ...
- Jenkins从下载到部署项目的流程
Jenkins安装配置 1.1 Jenkins介绍 Jenkins 是一款流行的开源持续集成(Continuous Integration)工具,广泛用于项目开发,具有自动化构建.测试和部署等功能.官 ...
- 测试工具(四)Jenkins环境搭建与使用
测试工具(一)Fiddler安装及使用 测试工具(二)Git环境搭建-Windows版 测试工具(三)Git常用命令 测试工具(四)Jenkins环境搭建与使用 文章目录 一.Jenkins简介 二. ...
- windows系统下jenkins环境搭建与基本使用
一. windows 系统下搭建jenkins环境 1.1 jenkins环境搭建和构建job流程图 1.2 安装jdk JDK下载地址: http://www.oracle.com/technet ...
- jenkins环境搭建
jenkins环境搭建首先要安装JDK,JDK安装好后配一下环境变量.然后装Tomcat,在Tomcat的目录下启动exe执行文件,在浏览器上输入http://localhost:8080,进入apa ...
- Play Framework 2.5 环境搭建与新建项目(二)
activator ui 方式 打开命令行窗口,输入以下命令: activator ui 浏览器中打开一个页面,类似于一个IDE,实际上也是一个网页版的IDE. 选择 Seeds->Play J ...
最新文章
- phalcon php 5.4,如何在php上安装phalcon
- 现在python已经更新到哪个版本了-Python 3.8 已发布 你会升级么?
- Java中重载(overload)和重写(override)
- 计算机基础教案(XP操作系统)
- 【控制】《多智能体系统的协同群集运动控制》陈杰老师-第7章-Brunovsky 型高阶非线性多智能体系统一致性控制
- Python“文件操作”Excel篇(上)
- for循环语句例子 python_Python for循环语句一般形式例子
- webstorm 快捷键
- QT/Embedded 2.3.8 MX21ADS板移植
- 机器视觉基础应用知识详解
- esp8266开发入门教程(基于Arduino)——环境安装
- Python 实现大量图片裁剪拼接并生成PDF
- 2019谷歌开发者大会
- 数据挖掘入门必看的几个问题
- matlab 分段符号函数,Octave符号包中的分段函数?
- 网络扫描技术揭秘读书笔记3--TCP SYN扫描
- PostgreSQL16中pg_dump的LZ4和ZSTD压缩
- 猫眼上市后的第一份财报:不安与野心同在
- Java中 -1l1是多少?
- 软件仓库的搭建管理方法
热门文章
- CSS——FC(BFC/IFC/FFC/GFC)超详细版+原理案例分析
- JavaScript(四)——具体对象(Math、字符串对象、Date对象、Number对象及Boolean对象)
- STL(二)——向量vector
- Docker小结(五)
- opencv颜色识别_opencv-python污水颜色识别
- 解决dom4j java.lang.NoClassDefFoundError: org/jaxen/JaxenException
- MySQL常用函数系列之九:日期和时间函数 函数(4)
- 【算法学习笔记】85.破环为链 序列DP 松弛+代价 SJTU OJ 1073 能量项链
- 炼数成金hadoop视频干货03
- VS20“.NET研究”10自定义新建文件模版