搭建Docker版gitlab私有云

工作中有使用到gitlab私有云服务,今天记录一下完整搭建过程。

1. 拉取gitlab镜像

  • 拉取gitlab的最新版本

docker pull gitlab/gitlab-ce

  • 会自动下载 latest 版本

2.添加容器挂载目录

创建GitLab 的配置 (etc) 、 日志 (log) 、数据 (data) 放到容器之外, 容器启动后可以映射到本机,然后后续就可以直接在主机查看和编辑了,不用再进入容器操作,便于日后升级, 因此我们先准备这三个目录。

  • 添加配置文件目录

mkdir -p /home/gitlab/etc

  • 添加日志文件目录

mkdir -p /home/gitlab/log

  • 添加数据文件目录

mkdir -p /home/gitlab/data

3.创建并启动容器

定义对应的目录挂载及端口设置

docker run -d -p 443:443 -p 9988:80 -p 222:22 --name gitlab --privileged=true --restart unless-stopped -v /home/gitlab/etc:/etc/gitlab -v /home/gitlab/log:/var/log/gitlab -v /home/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce:latest

容器初始化的过程可能需要好几分钟,查看存在此容器

4.修改访问配置

默认的配置文件,我们是无法访问的,需要更换成我们的IP

  • 修改gitlab.rb,设置访问IP ,目录/home/gitlab/etc/gitlab.rb

vi /home/gitlab/etc/gitlab.rb

任意空白位置添加三行

external_url 'http://14.17.22.32' ip替换为服务器ip(此处不能加端口,会无法启动服务)

gitlab_rails['gitlab_ssh_host'] = '146.56.247.207' 开放ssh服务

gitlab_rails['gitlab_shell_ssh_port'] = 222 开放ssh端口

  • 修改 gitlab.yml,设置端口和ip,目录 /home/gitlab/data/gitlab-rails/etc/gitlab.yml

vi /home/gitlab/data/gitlab-rails/etc/gitlab.yml

## Web server settings 文案下方的 host和port 设置为我们前面启动容器时设置的端口

  • 修改完成后,重启gitlab容器,让配置生效 (重启后等待几分钟,让服务彻底起来)

docker restart gitlab

4. 访问 gitlab 私有云

  • 使用 ip+端口 来访问
    初始登录会设置一个密码,账号为root

  • 进入到gitlab 项目中后可以创建项目并拉取

原文地址:https://www.cnblogs.com/jsondai/p/14317960.html