Docker安装gitlab

Docker安装gitlab

首先确定本地已经安装了Docker

安装gitlab

下载镜像

执行下面的命令,从 docker 的镜像仓库中下载 gitlab 社区版的镜像

docker pull gitlab/gitlab-ce:latest

镜像有 1g 多,所以需要等待一段时间

数据持久化保存

因为容器的数据是不能持久化保存的。所以我们需要用 docker volume 的方式将存储的数据映射到操作系统的目录中来。这样就算运行的容器崩溃,我们重新启动一个新的容器,原来容器中的数据还是不会丢失

所以创建了目录~/gitlab/

mkdir gitlab
mkdir gitlab/config
mkdir gitlab/data
mkdir gitlab/logs

启动容器

sudo docker run \
-d \
--name gitlab --restart always -p 9798:443 -p 9799:80 -p 22:22 \ 
-v /home/gorden/gitlab/config:/etc/gitlab \
-v /home/gorden/gitlab/logs:/var/log/gitlab \
-v /home/gorden/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce

首次启动需要几分钟的时间,可以使用sudo docker ps查看状态

gorden@sung:~$ sudo docker ps
CONTAINER ID    IMAGE               COMMAND             CREATED             STATUS                             PORTS                                                              NAMES
2f67d5aa86d3    gitlab/gitlab-ce    "/assets/wrapper"   45 seconds ago      Up 43 seconds (health: starting)   0.0.0.0:222->22/tcp, 0.0.0.0:9799->80/tcp, 0.0.0.0:9798->443/tcp   gitlab

starting为正在启动状态中。

这里要注意,可能容器的时间和宿主服务器的时间或不一致,所以我们要同步时间。

sudo docker cp /etc/localtime gitlab:/etc/localtime

然后重启

sudo docker restart gitlab

管理员配置 gitlab

登录 gitlab

等待 docker 容器启动完成后,访问 http://ip 就进入 gitlab 访问界面。第一次访问是让我们修改管理员密码,至少8个字符。
在这里插入图片描述
设置后管理员密码后,就进入登录页面,输入用户名 root 和刚才设置的密码就进入了 gitlab 的控制台。如下图所示

在这里插入图片描述

创建组( group)

gitlab 里面有三类对象:组( group)、项目( project)和用户 (people)。
为了方便管理,我们应该基于组来创建项目。一个项目就是一个 git 的仓库。基于组创建项目 ,然后将用户设置合适的权限后加入到组里面。这样用户就有了组里面所有项目的对应权限。

点击 “Create a group” 链接,如下图所示创建一个“健康医疗开发组” 的组

在这里插入图片描述

创建用户(people)

点击 “Add people” 链接,如下图所示创建一个 “yanggch” 的用户

在这里插入图片描述

因为还没有配置好邮件服务,所以还不能发送用户初始化密码的邮件。我们需要编辑用户,手动设置一个密码。如下图所示。如果用户忘记了密码,充值密码也可以在这里进行。

在这里插入图片描述

将用户加入组

为了方便管理,需要将用户加入到对应的组里面。如下图所示,在组管理界面中,点击组的名称,进入组用户设置界面。将刚才创建的用户 “yanggch” 加入到组 “健康医疗开发组”中,并且给他设置为 “Master” 角色。只有 “Master” 或者 “Owner” 角色才能推送 git 的更新。

在这里插入图片描述

创建项目(project)

增加 gitlab 组的时候,为了让项目让组里面的人都能访问,注意要将项目建立在组之下。如下图所示,在“健康医疗开发组”之下建立了 “redis_util” 的项目。

在这里插入图片描述
这样项目建好之后就可以被组里的用户访问了。但是ssh地址应该此时是不对的,那么就需要修改配置文件将ip和端口修改。

修改配置文件

# 配置http协议所使用的访问地址
external_url 'http://192.168.2.100'

# 配置ssh协议所使用的访问地址和端口
gitlab_rails['gitlab_ssh_host'] = '192.168.2.100'
gitlab_rails['gitlab_shell_ssh_port'] = 222

注意,每次修改gitlab.rb配置文件之后,或者在容器里执行gitlab-ctl reconfigure命令,或者重启容器以让新配置生效。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FlyWine

你的鼓励将是我创作的做大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值