⽤Docker安装Gitlab的⽅法步骤
Gitlab简介
是⼀个Git的代码托管⼯具,有免费的社区版允许我们在本地搭建代码托管⽹站,也有付费的企业版⽹站,能够在线托管代码。传统⽅式是⼿动下载Gitlab的软件包,然后搭建相关运⾏环境。不过这种⽅式⾮常⿇烦,⽽且如果要更换机器所有配置⼯作⼜得重来⼀边,如果有同学学过Java的话应该记得初学Java时配置环境变量的恐惧吧?因此更好的办法就是使⽤现在⾮常流⾏的Docker。
那么⼜是个什么东西呢?这是⼀个虚拟化的运⾏⼯具,主要⽬的是将软件和整个运⾏环境打包起来,让我们不需要配置即可快速运⾏软件。由于Docker依赖于Linux内核的某些特性,所以Docker只能在Linux上运⾏。Windows上的Docker实际上是开了⼀个虚拟机。Docker⽬前好像没有⽐较好的中⽂社区,我⾕歌了⼀下只到了这个,看起来还⾏。
安装docker
我⽤的是Archlinux,所以安装命令如下。
sudo pacman -S docker
如果使⽤其他系统的话需要改⽤相应的包管理⼯具。
安装好之后,来看看Docker的版本。
sudo docker version
应该会显⽰类似下⾯这样的信息。Docker客户端的版本最好在1.10以上。
Client:
Version: 1.13.1
API version: 1.26
Go version: go1.7.5
Git commit: 092cba3727
Built: Sun Feb 12 02:40:56 2017
OS/Arch: linux/amd64
Server:
Version: 1.13.1
API version: 1.26 (minimum version 1.12)
Go version: go1.7.5
Git commit: 092cba3727
Built: Sun Feb 12 02:40:56 2017
OS/Arch: linux/amd64
Experimental: false
这样Docker就安装成功了。
使⽤阿⾥云加速Docker
Docker官⽅镜像⽹站部署在外⽹,因此我们国内下载⽐较慢。看了⼀下国内最好的Docker加速服务就是阿⾥云了。阿⾥云的其他镜像⽐如Maven镜像之类的也都不错。
⾸先需要注册⼀个阿⾥云的帐号,可能还需要其他⼀点信息。然后进⼊,中间有⼀个加速器。我们点击它之后,阿⾥云会为我们创建⼀个专属加速器地址。
然后需要检查Docker客户端的版本,如果⼩于1.10,只能按照⾃⼰系统版本寻相应的办法了。如果⼤于等于1.10,就可以直接使⽤下⾯的配置⽅法。配置⽅法很简单,在/etc/docker/daemon.json中添加⼀段配置。如果没有该⽂件则创建。
{
"registry-mirrors": ["<your accelerate address>"]
}
然后重启Docker服务。
sudo systemctl daemon-reload
sudo systemctl restart docker
下载Gitlab
配置好加速器之后,下载就很快了。直接执⾏下⾯的命令,稍等⽚刻之后,Docker就会将Gitlab下载好了。
sudo docker pull gitlab/gitlab-ce:latest
启动Gitlab
⽤下⾯的命令启动⼀个默认配置的Gitlab。如果我们只在本机测试使⽤的话,将hostname替换为localhost。如果需要让外部系统也能访问的话使⽤外⽹IP地址。
sudo docker run --detach \
--ample \
--publish 443:443 --publish 80:80 --publish 22:22 \
--name gitlab \
--restart always \
--volume /srv/gitlab/config:/etc/gitlab \
--volume /srv/gitlab/logs:/var/log/gitlab \
--volume /srv/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:latest
⾸次启动可能⽐较慢,需要等待⼀分钟左右的时间。我们可以使⽤sudo docker ps命令查看当前所有Docker容器的状态。当它的状态由starting变为运⾏时间时,说明成功启动了。我们直接使⽤上⾯配置的IP地址(如localhost)在浏览器中访问即可。
初次使⽤需要我们创建默认管理员密码,随便指定⼀个就⾏了。然后我们需要注册⼀个普通⽤户。以后的使⽤⽅法和Github这样的⼯具很相似了。
配置Gitlab
刚刚启动Gitlab的时候需要我们输⼊⼀个密码,这个密码是管理员⽤户的密码。我们在登录那⾥使⽤root作为⽤户名,然后⽤刚刚设置的密码,就可以以管理员⾝份登录Gitlab。
登录进去之后,点击右上⾓的齿轮图标,即可进⼊到管理员页⾯。在这⾥我们可以设置很多东西。⽐如说,默认情况下每个⽤户只能创建10个仓库,我们可以改变这个设置。在管理员页⾯点击右⾯的齿
轮,再点击设置,就会进⼊到系统设置中。然后到Default projects limit⼀项,我们给它设个⼩⽬标,设它⼀个亿,这样就相当于⽆限仓库了。当然如果你实际硬盘满了也就不能在创建更多项⽬了。
如果这些配置还是不能满⾜你的需求的时候,还可以直接配置Gitlab。⾸先进⼊到Docker环境中。我们使⽤下⾯的命令进⼊Docker环境的bash中。gitlab是刚刚指定的Gitlab名称。
sudo docker exec -it gitlab /bin/bash
然后就进⼊了Docker的环境中,我们可以把它当作⼀个独⽴的系统来使⽤。然后编辑/etc/gitlab/gitlab.rb⽂件,这是Gitlab的全局配置⽂件。所有选项都可以在这⾥配置。
nano /etc/gitlab/gitlab.rb
详细的配置⽅法我也不会,直接看吧。
更新Gitlab
以后如果需要更新Gitlab版本,⾸先需要停⽌并删除当前的Gitlab实例。
sudo docker stop gitlab
sudo docker rm gitlab
然后在拉取最新版的Gitlab。
sudo docker pull gitlab/gitlab-ce:latest
然后在使⽤上次的配置运⾏Gitlab即可。不⽤担⼼数据会丢失。只要你的volume参数指定还和上次⼀样,Gitlab就会⾃动读取这些配置。
sudo docker run --detach \
--ample \
--publish 443:443 --publish 80:80 --publish 22:22 \
--name gitlab \
--restart always \
--volume /srv/gitlab/config:/etc/gitlab \
--volume /srv/gitlab/logs:/var/log/gitlab \
--volume /srv/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:latest
最后来看看使⽤Docker的优势。还是在Gitlab的Bash中。我们依次输⼊下⾯的命令,看看有什么反应。
ruby --versionmysql社区版国内镜像下载
git --version
redis-cli --version
psql --version
不出意外的话应该会显⽰对应软件的版本。我们看到Gitlab使⽤了4个开源软件或运⾏环境:ruby、git、redis和postgresql。如果我们⼿动安装Gitlab的话,这⼏个软件也必须分别安装和配置好。这个任务的难度可是⾮常⼤的。⽽且如果需要在多台机器上配置,那么任务量就更⼤了。但是如果使⽤Docker的话,我们甚⾄完全没必要知道这⼏个软件的存在,简单两条命令即可创建和运⾏Gitlab。这正是Docker的魅⼒,难怪现在越来越多的公司在使⽤Docker。
看到有个貌似不错的,⼤家可以看看。
参考资料
以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论