GitLab 玩转自动化部署

在开发过程是频繁需要和代码仓库交互的,例如 GitHub,GitLab等,如果代码仓库不单单只是拥有托管代码的能力,甚至可以帮助实现自动化测试,自动化部署,那听起来不是非常的酷吗。

关于 GitLab

在这里插入图片描述

强大的功能

Gitlab 不单单是一个代码托管的 VCS 版本控制系统,其他例如 CI/CD Pipelie,Wiki,Issue Tracking,Kanban 等等都是极少数人所知,但却可以极大提高软件的开发效率及部署效率的。

CE 与 EE 版本

GitLab 分为两个版本,GitLab CE(社区版)及 GitLab EE(企业版),其中 GitLab CE 为 MIT 许可证可以免费进行使用,而 GitLab EE 则为在 GitLab CE 的版本上增强了许多功能,但需要进行付费使用。

服务 自托管与 SaaS 的选择

无论是 GitLab CE 或者 GitLab EE 都可以选择自行托管服务器,或者是可以直接选择 gitlab.com 的 SaaS 服务,gitlab.com 目前也提供免费的套餐,有需要的话可以随时进行升级计划。

GitLab 部署

个人的经验建议

在这里,我非常推荐直接使用 GitLab EE 版本,因为在没有激活 License 许可证的情况下,功能是与 GitLab CE 一致的,避免了后期需要从 GitLab CE 升级到 GitLab EE 的问题。

我也直接使用 Docker 或者 Kubernetes 的方式去托管 GitLab Server,因为在日常的使用过程中,无论是备份、升级、问题处理都是非常快速和弹性的。

首先登陆 https://hub.docker.com/r/gitlab/gitlab-ee/tags 查看到目前最新的 GitLab EE 版本。

开始正式的部署

通过 Docker 进行部署 GitLab Server

docker run -d  -p 80:80 -p 443:443 --name gitlab-server \
-v /data/gitlab/etc:/etc/gitlab \
-v /data/gitlab/logs:/var/log/gitlab \
-v /data/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ee:13.4.4-ee.0

  
 
  • 1
  • 2
  • 3
  • 4
  • 5

Docker 参数详解

docker run # 创建并运行容器
-d  # 后台运行
-p 80:80 -p 443:443 # 映射容器端口到宿主机上
--name gitlab-server # 指定容器别名方便后期操作
-v /data/gitlab/etc:/etc/gitlab # GitLab 配置目录
-v /data/gitlab/logs:/var/log/gitlab # GitLab 日志目录
-v /data/gitlab/data:/var/opt/gitlab # GitLab 数据目录
gitlab/gitlab-ee:13.4.4-ee.0 # GitLab EE 镜像

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

在这里有一个安全方面的考虑,不打开 ssh 22 的端口进行提供服务,建议是全部都是用 https TLS加密的方式进行对 GitLab Server 操作,无论是 git 客户端的交互,还是通过 web 客户端的交互。

大概需要等待3分钟…
docker logs -f gitlab-server 可以查看目前部署的内容进度

通过浏览器打开宿主机上的IP地址,成功访问到 GitLab Server
在这里插入图片描述

文章来源: yekangming.blog.csdn.net,作者:叶康铭,版权归原作者所有,如需转载,请联系作者。

原文链接:yekangming.blog.csdn.net/article/details/109241436

(完)