工作中遇到一个需求,需要对 gitlab 的 commit 内容做检查,因此需要搭建一个 gitlab 平台做测试。非工作需要,个人使用不建议 gitlab,太重量级了,资源消耗很大,推荐轻量代码托管平台:gitea. 这里使用 docker 搭建。官方教程:点击跳转

容器创建

docker 命令

假设 gitlab 容器所在宿主机访问 ip 为 192.168.1.2

sudo docker run -detach -p 8080:8080 -p 222:22 --name gitlab -e GITLAB_OMNIBUS_CONFIG -v /data/gitlab/config:/etc/gitlab -v /data/gitlab/logs:/var/log/gitlab -v /data/gitlab/data:/var/opt/gitlab --shm-size 256m gitlab/gitlab-ee:latest

docker-compose 服务

version: "2"
services:
  gitlab:
    image: gitlab/gitlab-ce:latest
    ports:
      - 8088:8088
      - 222:22
    volumes:
      - /data/gitlab/config:/etc/gitlab
      - /data/gitlab/log:/var/log/gitlab
      - /data/gitlab/data:/var/opt/gitlab
    shm_size: 256m

配置

注意通过上面命令创建容器后,还无法通过 8080 端口访问,还要经过配置

启动容器后,修改/data/gitlab/config/gitlab.rb文件,填写如下内容:

external_url "http://192.168.1.2:8088"
gitlab_rails['gitlab_shell_ssh_port'] = 222

然后重启 gitlab 容器docker restart gitlab

访问

上述操作完毕后即可通过http://192.168.1.2:8088访问 gitlab 服务

初始管理员用户名:root 初始管理员密码通过/data/gitlab/config/initial_root_password文件查看。注意此文件会在 24 小时后自动删除