一、前提条件
(1) 存在docker
(2) 服务器可以联网(外网)
(3) 服务器内存至少4G(内存不够会出现502错误)
内存不足502错误如下图所示:
二、安装
本次安装在CentOS7下进行,下面的命令建议复制到记事本后再从记事本复制
# 1、查找GitLab镜像
1 |
|
# 2、拉取gitlab docker镜像
1 |
|
# 3、运行GitLab并运行容器
1 2 3 4 5 6 7 8 9 10 11 |
|
命令解释:
-i 以交互模式运行容器,通常与 -t 同时使用命令解释:
-t 为容器重新分配一个伪输入终端,通常与 -i 同时使用
-d 后台运行容器,并返回容器ID
-p 9980:80 将容器内80端口映射至宿主机9980端口,这是访问gitlab的端口
-p 9922:22 将容器内22端口映射至宿主机9922端口,这是访问ssh的端口
-v /usr/local/gitlab-test/etc:/etc/gitlab 将容器/etc/gitlab目录挂载到宿主机/usr/local/gitlab-test/etc目录下,若宿主机内此目录不存在将会自动创建,其他两个挂载同这个一样
--restart always 容器自启动
--privileged=true 让容器获取宿主机root权限
--name gitlab-test 设置容器名称为gitlab-test
gitlab/gitlab-ce 镜像的名称,这里也可以写镜像ID
# 重点:接下来的配置请在容器内进行修改,不要在挂载到宿主机的文件上进行修改。否则可能出现配置更新不到容器内,或者是不能即时更新到容器内,导致gitlab启动成功,但是无法访问
# 4、进入容器内
1 |
|
# 5、修改gitlab.rb (先查看下一个步骤再决定是否进行本步骤,本步骤是可以跳过的)
1 2 3 4 5 6 7 8 9 10 11 |
|
# 6、修改gitlab.yml (这一步原本不是必须的,因为gitlab.rb内配置会覆盖这个,为了防止没有成功覆盖所以我在这里进行配置,当然你也可以选择不修改gitlab.rb直接修改这里)
1 2 3 4 5 6 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|
1 2 |
|
# 7、让修改后的配置生效
1 |
|
# 8、重启gitlab
1 |
|
# 9、退出容器
1 |
|
# 10、在游览器输入如下地址,访问gitlab(eaxternal_url配置的就是这个)
1 |
|
如果访问不成功的话:
(1) 进入容器查看gitlab.rb和gitlab.yml文件是否配置成功
(2) 查看防火墙是否开放9980、9922端口
# 11、第一次访问默认是root账户,会需要修改密码(密码至少8位数,出现如下界面就基本上部署成功了)
# 12、输入新密码后进行登录
1 |
|
# 13、登录后界面如下图,创建一个新项目
# 14、输入信息,创建项目
# 15、检查这里两处的ip的端口是否是你配置的
如果这里两处的端口和ip和配置的不一样,再次进入容器检查gitlab.yml文件
如下图显示:
若不一样,将其修改为你的配置,然后:wq,再进行下面的操作
1 2 3 |
|
# 16、安装到此结束
三、关闭用户注册
1、使用root用户登录gitlab
2、点击【Admin Area】
3、点击【Settings】
4、点击Sign-in restrictions这一栏的【Expand】
5、取消勾选
6、往下滑动,找到保存按钮,点击保存
7、进入登录界面,发现注册的窗口已经消失了