由于资源有限,没有linux服务器可用,这里就以windows环境为例,配合jenkins和nginx,搭建一个前端项目自动化部署示例,供参考和学习。
下载后解压文件放到某个目录里,目录路径不要带中文,比如我的是D:\Program Files (x86)\nginx-1.16.1,记住这个路径,后面配置jenkins任务时会用到。
用文本编辑器打开配置文件 D:\Program Files (x86)\nginx-1.16.1\conf\nginx.conf
listen用于配置端口号,为防止端口冲突,我改成了8100
这里简单配置下重定向和接口代理:
#user nobody;
worker_processes 1;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
server {
listen 8100;
server_name localhost;
location / {
root html;
rewrite ^/$ /web/ redirect;
}
location ^~ /proxy {
proxy_pass https://atest.com/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Real-Port $remote_port;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
附赠一个windows下用于重启nginx的脚本文件:
nginx -s reload
nginx -s quit
taskkill /f /t /im nginx.exe
start nginx
官网下载jenkins:传送门
选择LTS windows版本:
按照提示一步步安装jenkins然后安装相关插件,下载很慢,慢慢等吧,我等了一整天,还重试了一次才把全部插件下载安装完。。。
jenkins首页,左上角选择新建item,
输入任务名称,建议用项目名+api服务器环境名,选择freestyle project,确定,首页就会出现刚创建的任务。
首页点击刚创建的任务名,进入任务页,点击配置进入任务配置页:
勾选This project is parameterized,点击添加参数,选择git parameter,然后点击高级,展开更多选项,按如下配置:
这里填写的名称就是后面需要用到的变量名,不要使用中文,分支排序方式配置按创建时间倒序,默认选中master分支。
源码管理模块,选中Git,填写仓库地址,我这里是用的gitlab地址,用github也类似,这里以https方式为例,你也可以自己配置ssh方式。
gitlab界面:
jenkins界面:
第一次配置任务时需要在credentials栏选择添加,添加jenkins,然后弹窗里输入仓库校验的用户名和密码,也就是你使用https方式第一次clone项目或者push提交项目时要输入的那个用户名和密码:
添加后,在credentials栏切换刚添加的项,没有红色警告就表示身份校验正确。
在构建模块下,点击增加构建步骤,选择execute window项:
输入命令打印当前服务器环境的node和npm版本:
node --version
npm --version
重复上述操作,增加构建步骤,使用淘宝源安装依赖:
npm i --registry https://registry.npm.taobao.org
继续增加构建步骤,npm打包项目:
npm run build
最后再加一条构建步骤,用于将打包后的文件放到nginx服务器目录下:
cd "D:\Program Files (x86)\nginx-1.16.1\html"
rd /s/q web
md web
xcopy "D:\Program Files (x86)\Jenkins\workspace\dyd-official-test\build" "D:\Program Files (x86)\nginx-1.16.1\html\web" /E /Y
全部配置完后保存。
windows下运行一些命令需要提前在jenkins里配置环境变量。
在任务页,选择build with parameters,右侧会出现分支选项,选择你想构建的分支,点击开始构建,就开始了,左下角会有构建进度:
有时候左下角没看到构建进度提示,可以点击左下角的箭头翻到最顶部,
如果构建失败,构建历史的那个圆点会标红,点进去可以查看详情,点击控制台输出可以查看构建日志,以此来查找出错原因:
找到出错原因后重新修改项目任务的配置,再重试构建,构建成功后,构建历史栏的圆点是蓝色:
windows下配置这些还是踩了不少坑的,有条件还是上真实服务器环境吧,有什么问题可以在评论区留言。