SpringBoot实战电商项目mall(50k+star)地址:github.com/macrozheng/…
摘要
之前写过一篇文章《再见 Jenkins !几行脚本搞定自动化部署,这款神器有点厉害!》 ,讲的是使用Gogs+Drone来实现自动化部署。最近发现Gitlab的CI/CD功能也能实现自动化部署,用起来也挺简单!如果你使用的是Gitlab作为Git仓库的话,不妨试试它的CI/CD功能。本文还是以SpringBoot的自动化部署为例,实践下Gitlab的CI/DI功能,希望对大家有所帮助!
安装
通过Gitlab的CI/CD功能实现自动化部署,我们需要安装Gitlab、Gitlab Runner、Maven这些服务。
安装Gitlab
首先我们来安装下Gitlab,对Gitlab安装和使用不了解的朋友可以参考下《10分钟搭建自己的Git仓库》 。
- 使用如下命令运行Gitlab服务,这里需要注意的是添加了
hostname
属性,这样我们就可以通过域名来访问Gitlab了(为了避免一些不必要的麻烦),GITLAB_ROOT_PASSWORD
这个环境变量可以直接设置Gitlab中root账号的密码;
docker run --detach \
--hostname git.macrozheng.com \
--publish 10443:443 --publish 1080:80 --publish 1022:22 \
--name gitlab \
--restart always \
--volume /mydata/gitlab/config:/etc/gitlab \
--volume /mydata/gitlab/logs:/var/log/gitlab \
--volume /mydata/gitlab/data:/var/opt/gitlab \
-e GITLAB_ROOT_PASSWORD=12345678 \
gitlab/gitlab-ce:latest
复制代码
- 我们需要通过
git.macrozheng.com
这个域名来访问Gitlab,如果你没有域名的话,可以通过修改本机的host文件来实现;
192.168.7.134 git.macrozheng.com
复制代码
- 由于我们的Gitlab运行在
1080
端口上,我们想要不加端口来访问,可以使用Nginx来反向代理下,对Nginx不熟悉的朋友可以看下《Nginx的这些妙用,你肯定有不知道的!》 ,在Nginx的配置文件夹中添加