解放双手 | Jenkins + gitlab + maven 自动打包部署项目

 

前言

记录 Jenkins + gitlab + maven 自动打包部署后端项目详细过程!

需求背景

不会偷懒的程序员不是好码农,传统的项目部署,有时候采用本地手动打包,再通过ssh传到服务器部署运行,这种方式对于单应用部署还算可以,不会耗费太大时间,但假如分布式项目,拆分为多个微服务部署,那么每个服务都打包部署一遍,发布上线可能会耗时非常久,Jenkins + gitlab + maven 可以实现自动打包,部署到远程服务器~

什么是gitlab

程序员肯定都懂的,跟gayhub一样的东西,可以在内网自己搭建一套来管理项目代码。

什么是Jenkins

可以简单地理解为可以代替你实现自动从gitlab拉取代码,打包,部署到远程服务器的工具。

环境准备

使用`docker`安装`gitlab`

gitlab的安装这里不做过多记录,可以参考以下内容:

  • https://www.cnblogs.com/zuxing/articles/9329152.html

  • https://hub.docker.com/r/beginor/gitlab-ce/

使用`docker`安装`Jenkins`

1docker run --name jenkins --privileged=true -d -v /home/docker/data/jenkins_home:/var/jenkins_home -p 8090:8080 -p 50000:50000 jenkins/jenkins:lts

参数解析:

  • --name jenkins:指定 Jenkins 容器名称
  • --privileged=true:防止docker容器没有权限
  • -d:容器在后台启动
  • -v /home/docker/data/jenkins_home:/var/jenkins_home:将容器的/var/jenkins_home 映射到本机的/home/docker/data/jenkins_home目录,为了便于管理Jenkins容器的数据,需要注意的是,挂载出来的目录允许我们往容器里面添加文件或者目录,也就是在`/home/docker/data/jenkins_home:/var/jenkins_home`中添加的文件或者目录都会被映射到容器目录`/var/jenkins_home`,那么我们最终在`Jenkins`中配置软件环境时应当使用容器目录路径,因为`Jenkins`实际上是在容器中跑的,比如JDK家目录,你放在/home/docker/data/jenkins_home/jdk_home,那么最终配置应当写成/var/jenkins_home/jdk_home
  • -p 8090:8080 -p 50000:50000:将容器的8080端口映射到本机的8090端口,5000端口映射为5000端口
  • jenkins/jenkins:lts:指定镜像名称跟 tag

可能会踩的坑:

50000+
5万行代码练就真实本领
17年
创办于2008年老牌培训机构
1000+
合作企业
98%
就业率

联系我们

电话咨询

0532-85025005

扫码添加微信