# 三.使用 Gitlab

前言

Gitlab 这里主要拿来作为代码仓库案例使用,作用类似 github、gitee

# 1.安装过程

# 1.1 获取镜像

这里我们拉取最新的 gitlab-ce 镜像

docker pull gitlab/gitlab-ce:latest
1

# 1.2 获取容器

我们使用 docker run 命令启动一个新的 Gitlab 容器

# 1.3 完成安装

# 2.其他问题

--restart: 当 Docker 重启时,容器自动启动,否则就需要使用 docker restart 启动 gitlab 端口映射规则:最好内外端口映射一致,gitlab 会根据你的配置文件调整服务端口。如外部访问 8899,内外都配置 8899 一般 Gitlab 有三个端口要使用:ssh,https,主服务地址。 ssh 默认是 22,这里我改为了 333,下方配置文件内也要改为 333 然后我们在防火墙添加 333 和 8899 端口的放行,并重载防火墙

firewall-cmd --zone=public --add-port=333/tcp --permanent
firewall-cmd --zone=public --add-port=8899/tcp --permanent
systemctl reload firewalld
1
2
3

# 2.1 修改 Gitlab 配置文件

容器启动后,我们需要修改 Gitlab 配置文件,修改 Gitlab 主服务地址和 SSH 服务地址

vi /home/gitlab/config/gitlab.rb
1

在文件内增加三条配置: • external_url: 外部服务访问地址 • gitlab_rails['gitlab_ssh_host']:SSH 代码拉取地址 • gitlab_rails['gitlab_shell_ssh_port']:SSH 代码拉取端口

external_url 'http://外部访问域名/地址:端口'
gitlab_rails['gitlab_ssh_host'] = 'SSH外部访问域名/地址'
gitlab_rails['gitlab_shell_ssh_port'] = SSH端口
1
2
3

# 3.1 如果修改 SSH 端口

SSH 默认的端口是 22 。这里内外分开,将 Gitlab 容器内 SSH 端口改为了 333 。 先进入 Gitlab 容器,直接编辑 /assets/sshd_config 和 /etc/ssh/sshd_config 这两个文件即可。修改最上方的 Port 字段。

docker exec -it gitlab /bin/bash
vim /assets/sshd_config
vim /etc/ssh/sshd_config
1
2
3

接着重启 Gitlab

docker restart gitlab
1

# 2.2 启动 Gitlab

访问 宿主机:端口 ,查看 Gitlab 启动情况,如果显示 502 ,则代表正在启动中。第一次启动时间可能会有些长。如显示以下界面,代表启动成功。

修改密码后,默认管理员是 root ,登录进入即可