laradock+jenkins自动部署Vue项目

1,605 阅读4分钟

新手写博客,写得不好大神多多包涵。

用jenkins就是想,前端打包好后,push到码云或者github,jenkin会自动检测,然后拉取到服务器,甚至可以在jenkins上做打包,那么前端就不需要自己手动打包了,只需要把未打包的项目文件push到码云或者github,jenkins自动做打包和部署。不用好像以前一样,前端打包dist文件后,发给后台,后台每次都ssh上服务器替换。

如果你是用laradock,那么已经有一个jenkins容器了,如果没有的话,要先下载java的jdk才能运行jenkins,因为jenkins是java开发的,依托在java环境中运行

因为我是用laradock,所以一下基于laradock进行讲解

首先启动jenkins容器,然后jenkins默认端口是8080,但是用laradock是宿主机的8090端口映射jenkins容器的8080端口,所以你在浏览器打:服务器地址:8090就可以进入到jenkins的web管理界面

首次打开需要输入

如果你是用laradock的话,这个地址我记得需要 docker-compose exec jenkins bash 进入到jenkins容器里,然后使用find / -name initalAdminPassword然后进去这个文件,复制粘贴上去,

下一步他会叫你自定义jenkins,这里直接安装推荐插件即可。

慢慢等

接下来会叫你创建一个管理员账号,这个账号是下一次访问jenkins web管理界面的时候他会叫你输入账号密码,就是这里创建的账号密码 账号就是用户名,不是全名,密码一定要记住,不然想找回密码时很复杂的。

创建好后就进入到了jenkins主面板了

然后如果你是码云的话,去插件管理,搜索gitee

因为我已经装过了,所以这里没有显示,你那里肯定已经显示了,然后选择安装

然后去系统管理-->系统设置

找到gitee配置,

  1. 连接名随意,但是如果你要连接两个码云账号的话,那么连接名最好有意义
  2. gitte配置那里输入
  3. 配置证书令牌:看下面 gitee.com/

他有个获取地址,转到获取地址

点击生成新令牌

描述最好有意义,而且令牌只会出现一次,然后点击提交

令牌生成成功,复制令牌

回到jenkins控制台

添加完后选择刚才添加的令牌,然后点击测试连接,如果出现成功则连接成功,到这里,gitee的配置就配置完了

这里注意,如果你想jenkins帮你build埋的话,就要安装nodeJs插件,这里就不演示了

然后开始新建一个任务

选择构建一个自由风格的软件项目,最后点击ok

随机就会进入到任务配置界面,如下

先是基本设置

然后是源码设置,选择git,添加仓库地址,然后点击add

因为这个仓库是私有仓库,所以有一行文字出现,这里要点击add去设置账号

设置

选择刚才的那个凭证,这个时候那串文字就会消失

下一步到build Triggers

现在去码云对应的那个仓库进行设置

点击设置 --> webhooks --> 添加

点击测试

下一步到build,选择执行shell。然后打你想进行的命令就可以了,

点击save

一个任务创建成功。

点击任务名

然后现在去服务器看一下,路径的话会和不用docker创建的jenkins不同,因为我现在没进去容器里面,然后宿主机的这个路径就是常规的jenkins的工作路径(workspace)

可以看到,gitee的文件这里都会有了

然后到nginx前端配置指向这个目录,就可以了 /root/myworkspace/laradock/jenkins/jenkins_home/workspace/shetuan_vue/dist

这里我没有用jenkins来去自动build。因为我认为,前端build可能会出现问题,但是如果你用jenkins自动build的话,如果出问题,前端必须进入jenkins查看构建日志才能找到问题,这里用广东话就是,偷鸡唔到蚀渣米,所以我就不那样做了,之前前端在本地build好,生成dist文件,然后把push到gitee,jenkins再拉取过来,就实现了自动部署。