文档说明
该文档以实际项目为例,进行Jenkins和服务器的相关操作编辑,其他项目具体的操作细节根据项目来定,对应细节可咨询对应的项目开发团队或团队内部咨询。
1.Jenkins项目
Jenkins通过给定的代码地址URL,将代码拉取到其“宿主服务器”,进行编译、打包和发布到容器中。
1-1新建项目
1-1-1 新建自由风格的软件项目
前端软件应用使用自由风格来进行构建项目。(没有pom.xml文件)
登录Jenkins;点击左侧菜单栏“新建”;
输入要新建项目的名称,选择“构建一个自由风格的软件项目”,点击OK。
1-1-2 新建maven项目
后端软件应用构建maven项目。(含有pom.xml文件)
Maven是基于项目对象模型(POM project object model),可以通过一小段描述信息(配置)来管理项目的构建,报告和文档的软件项目管理工具。
Maven的核心功能便是合理叙述项目间的依赖关系,就是通过pom.xml文件的配置获取jar包。
第一个项目时,需新建maven项目
登录Jenkins;点击左侧菜单栏“新建”;
输入要新建项目的名称,选择“构建一个maven项目”,点击OK。
1-2 初始化配置参数
1-2-1 初始化自由风格项目的配置参数
【General】
项目名称:构建项目的名称(必填);
描述:构建项目的详情描述(可选)。
【源码管理】
选中git,Repositories部分输入Repository URL(git代码库),Credentials选中gituser/**(必填,唯一);
Branches to build部分输入构建分支名称,如/test。
【构建环境】
勾选Provide Node & npm bin/ folder to PATH,NodeJS Installation选择Node JS 11.7.0(根据实际的JS选择版本)。
【构建】
增加构建步骤选择Execute shell;
command中输入构建命令集(根据项目构建的实际操作进行输入命令集)。
eg-1:
npm install npm run build
eg-2:
node -v
npm install
npm run build
ls
pwd
tar -zcvf dist.tar.gz ./dist
ls
【构建后操作】
增加构建后操作步骤选择Send build artifacts over SSH;
SSH Publishers中SSH Server name 选择对应的服务器的IP地址,eg:192.168.15.160; Transfers中的Source files输入对应的源文件名称,eg:dist.tar.gz;
最后,点击应用保存。
保存成功后,在首页会显示已经构建的项目。
进入项目,点击左侧菜单栏中的“立即构建”,将会进行构建对应的系统或服务。
构建之后,在左侧菜单栏下方会显示构建历史
构建历史中的图标含义
红色表示失败
黄色表示警告
蓝色表示成功
鼠标浮动在构建历史的时间节点处,会显示下拉图标,点击下拉图标,选择console output来查看输出的构建日志。
出现构建失败时,进行查看构建日志分析处理。
1-2-2 初始化maven项目的配置参数
【General】
项目名称:构建项目的名称(必填);
描述:构建项目的详情描述(可选)。
【源码管理】
选中git,Repositories部分输入Repository URL(git代码库),Credentials选中gituser/**(必填,唯一);
Branches to build部分输入构建分支名称,如/test。
【构建触发器】
保持默认。
【构建环境】
保持默认。
【Pre Steps】
保持默认。
【Build】
勾选Provide Node & npm bin/ folder to PATH,NodeJS Installation选择Node JS 11.7.0(根据实际的JS选择版本)。
【Post Steps】
勾选Provide Node & npm bin/ folder to PATH,NodeJS Installation选择Node JS 11.7.0(根据实际的JS选择版本)。
【构建设置】
保持默认。
【构建后操作】
增加构建后操作步骤选择Send build artifacts over SSH;
SSH Publishers中SSH Server name 选择对应的服务器的IP地址;
Transfers中的Source files输入对应的源文件名称,eg:dist.tar.gz;
最后,点击应用保存。
保存成功后,在首页会显示已经构建的项目。
进入项目,点击左侧菜单栏中的“立即构建”,将会进行构建对应的系统或服务。
构建之后,在左侧菜单栏下方会显示构建历史。
鼠标浮动在构建历史的时间节点处,会显示下拉图标,点击下拉图标,选择console output来查看输出的构建日志。
1-3 复制项目
1-3-1 复制自由风格的软件项目
登录Jenkins;点击左侧菜单栏“新建”;
输入要新建项目的名称,输入复制的源项目名称,点击OK。
1-3-2 复制maven项目
第二次创建项目时,可直接复制已有的maven项目
操作方式同【复制自由风格的软件项目】。
1-3-2-1 修改配置参数
进入项目,点击左侧菜单栏的配置,进入参数配置页面,具体的配置修改同【初始化配置参数】部分。
2.服务器应用
2-1 获取代码
进入代码工程目录 cd /data/project
2-2 新建应用
以实际测试环境为例
2-3 初始化应用目录
2-3-1 后端
新建项目目录
进入/data/dockerfile/: cd /data/dockerfile
新建目录easyloan: mkdir project_name
新建项目部署脚本目录project_name: cd /data/dockerfile/project_name mkdir project_name
在脚本目录新建build.sh、config_from_jenkins.sh、deploy.sh、start.sh、Dockerfile、build.txt
脚本内容详见【脚本说明】
2-3-2 前端
新建项目目录
进入/data/: cd /data
新建目录: mkdir testfqhdh5
再新建部署目录: cd /data/testfqhdh5 mkdir testfqhdh5
在项目目录下新建配置文件备份目录: mkdir testfqhdh5_bak
2-4 初始化配置文件
2-4-1 后端
cp /data/project/$project/src/main/resources/application.properties /data/dockerfile/project_name/$project/application.properties
2-4-2 前端
cp /data/project/easyloanmanagement/js/basePath.js /data/testfqhdh5/testfqhdh5_bak/basePath_bak.js
2-5 修改配置文件
2-5-1 后端
vim /data/dockerfile/project_name/$project/application.properties
2-5-2 前端
vim /data/testfqhdh5/testfqhdh5_bak/basePath_bak.js
3. 启动应用
3-1 启动
Jenkins构建时执行deploy.sh脚本自启动应用服务。
4.环境配置
新增域名访问调用时,需新增Nginx的vhost配置文件
4-1 Nginx配置
4-1-1 新增Vhost
若是新环境部署,若没有vhost目录,需手动新增该目录。
进入Nginx目录 cd /etc/nginx
新建vhost目录 mkdir vhost
进入vhost目录,以富勤好贷业务前端test.asd.78dk.com为例,新增相应的域名配置文件test.asd.78dk.com.conf
vim test.asd.78dk.com.conf
server {
server_name test.asd.78dk.com;
root /data/testfqhdh5/testfqhdh5;
autoindex on;
location / {
try_files $uri $uri /index.html;
}
}
4-1-2 修改config
vim test.asd.78dk.com.conf
修改对应的server_name和root部署目录。
5.脚本说明
build.sh
config_from_jenkins.sh
deploy.sh
start.sh
Dockerfile