GitLab是一个基于Git的开源的代码管理系统,可以方便的为个人和企业搭建私有仓库。鉴于本地已有Docker环境,下面我们将简单介绍GitLab在Docker下面的安装和使用。
环境
Windows操作系统:Windows10(21H2,19044.1766)
Linux操作系统:Ubuntu 22.04 LTS
Docker Desktop:v4.10.1
安装
Docker安装:打开GitLab的中文官网的安装页面(https://gitlab.cn/install/),找到Docker安装部分

点击Docker镜像进入安装说明

执行安装:这里直接使用Linux下面的操作步骤
export GITLAB_HOME=/srv/gitlab
sudo docker run --detach \
--hostname gitlab.example.com \
--publish 443:443 --publish 80:80 --publish 22:22 \
--name gitlab \
--restart always \
--volume $GITLAB_HOME/config:/etc/gitlab \
--volume $GITLAB_HOME/logs:/var/log/gitlab \
--volume $GITLAB_HOME/data:/var/opt/gitlab \
--shm-size 256m \
registry.gitlab.cn/omnibus/gitlab-jh:latest
特别说明,这里hostname可以设置为域名,或者自定义的地址(增加hosts映射即可)
由于安装过程较为缓慢,需要等待一段时间,期间可以通过
docker ps -a | grep gitlab
命令查看运行状态,由starting转为healthy即可

使用
地址映射:当GitLab启动完成后,打开hostname指定的地址(http://gitlab.example.com/),如果是自定义的地址可以本地映射(需要使用管理员编辑C:\Windows\System32\drivers\etc\hosts,如果无法保存,则可以复制一份hosts文件,修改后再覆盖)

注册用户:打开安装指定的地址

此时没有账号,无法登录,可以选择注册

注册完成,弹出提示,需要管理员审批

但是安装过程中并没有设置过管理员,此时需要重置管理员密码
重置管理员密码:首先进入容器
sudo docker exec -it gitlab bin/bash

然后进入rails控制台,查找用户root,并重置密码,保存后退出
user = User.where(id:1).first
user.password='Wh945123'
user.save!

审批用户:然后使用root/Wh945123登录,登录后点击管理员/用户菜单,找到未启用双重认证标签,即可看到刚刚注册的用户

点击右侧按钮,选择批准

此时,用户abc已经可以正常使用

用户登录:退出root用户,再登录abc用户即可


至此,Docker下面安装GitLab的过程已经完成,可以正常使用了。
说明:GitLab创建Docker容器运行的时候,需要自行指定hostname,若是本地则需要在hosts文件中添加映射,在使用时需要重置管理员密码已审批新注册用户。




