手记

初探docker部署gitlab

各位小伙伴万福金安,我是你们的小栈君,今天给大家带来的分享是关于gitlab的部署的实战操作,对于gitlab相信不少的小伙伴都或多或少的接触过一些,总的老说GitLab是一个利用 Ruby on Rails开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。在公司或者企业中都会进行构建自己的代码仓库,此时的话拥抱gitlab是你最佳的选择,今天小栈君就手把用docker搭建GitLab服务器。欢迎大家关注公众号或是手记

部署准备

在拉取前夕,我们需要准备相关的docker环境,保证docker环境可以用,针对于docker的操作过段时间,小栈君会进行一个详细的教程书写,所以在本文中不会过多的讲述。只需要你跟着小栈君的步伐进行一步步操作,就可以了。话不多说,让我们开始吧。

一、检查环境

安装好之后首先检查一下docker的版本

在这里小栈君安装的版本如上图所示:

二、查找原镜像数据

在保证我们docker安装无误的情况下,我们就可以在docker的镜像市场中进行gitlab的搜索。

使用命令 docker search gitlab 就可以搜索到全部的镜像了。如下图所示:

这里面我们就可以看到其他开发者或则社区帮我们打包好的镜像,虽然我们自己也可以进行做这个镜像,但是完全没有必要。我们开发的一贯宗旨就是“能躺着绝不站着”。在这里有一个小tips给大家,针对有的不怀好意的开发者,在创建镜像时往往会添加一些后门,所以我们再拉取的时候也需要长一个心眼,所以在描述中 和在starts数量上尽量选择官方的镜像和starts 数量比较多的。针对查找好的镜像,我们就可以进行镜像的拉取,同样的 我们如果直接使用docker pull 可能速度较慢,所以我们可以使用阿里的云仓为我们进行加速。

docker pull registry.cn-hangzhou.aliyuncs.com/imooc/gitlab-ce:latest

检查镜像

​ 在镜像拉取完成之后,我们就可以又一次愉快的进行查看了,所以大家在完成操作后一定要注意查看,养成一个良好的习惯,有益于减少bug的发生~。

docker images 查看镜像仓库

在写这篇文章的时候,小栈君这边已经拉取好了最新的镜像,所以简单检查一下就好了,其实这边的镜像这么大,是有原因的,在后面我会详细给大家讲解一下。

部署脚本

针对gitlab 之中,它内含的功能是非常强大的,当然其中需要映射出来的端口也是很多的,所以小伙伴不要一开始下载下来就立马执行 docker run命令,如果你执行了,小栈君很不幸的告诉你,你得到的只会是404。同样的如果你即使执行了端口映射,也启动好了,将来的某天需要重新启动的时候,你如果不将数据挂载出来,你收获的又将是自挂东南枝吧。

所以呢,我们在启动之前,需要做的就是一件事–编写启动脚本。一个好的启动脚本会让你在项目启动的时候非常的丝滑。首先在服务器上选择一个空位,最好是在root文件夹中创建一个专属的gitlab文件夹,另外,在同级目录创建一个start.sh 空文件。如图所示:

然后就开始我们的脚本编写之旅。首先我们需要进行22、443、80开放,另外就是针对源数据,日志,配置的文件进行挂载出来,以下是小栈君的简单脚本,仅供参考哦。

GITLAB_DIR=/root/gitlab/data
docker stop gitlab
docker rm gitlab
docker run -d \
            -p 5443:443 -p 9998:9998 -p 2222:22 \
            --name gitlab \
            -v ${GITLAB_DIR}/config:/etc/gitlab \
            -v ${GITLAB_DIR}/logs:/var/log/gitlab \
            -v ${GITLAB_DIR}/data:/var/opt/gitlab \
            gitlab/gitlab-ee:latest

然后我们就可以使用sh start.sh启动gitlab了,初次启动会比较慢,所以我们需要耐心等待一下。启动之后我们就可以看到我们原本空data 文件夹中有了很多东西,如下图所示:

现在就可以给大家解释为什么镜像这么大,是因为gitlab 的依赖非常的多。这里都可以看到Nginx、postgresql等等。

改造之路

你以为现在就已经可以高枕无忧了么,其实还差点意思,因为小栈君在访问gitlab中的端口做了点手脚,所以在访问的时候需要用到端口9998,所以还需要改动一点配置,才能够生效。

在config目录我们需要对gitlab.rb进行如下修改:

external_url 'http://本机ip:9998'

至此,我们的安装就告一段落了,重新执行sh命令之后,我们耐心等待就可以登录啦。

安装好的小伙伴就可以使用root账户进行登录,相关的密码可以在config中的找寻得到。

所以我们今天的分享就先到这里吧,我是小栈君,关注我每天学习新知识。我们下期再见啦。

0人推荐
随时随地看视频
慕课网APP

热门评论

有幸拜读您的文章,按步骤操作都很顺利,最后也能成功登录,但是,docker或gitlab重启后,浏览器访问时,总是”无法访问此网站“,何解?

查看全部评论