您当前的位置:首页 > 计算机 > 云技术 > Docker

使用Docker快速搭建Gitlab,部署Git服务

时间:10-28来源:作者:点击数:
安装Docker

安装 Docker 的方式相对简单,直接去 Docker 官网(www.docker.com),按照操作在liunx安装Docker

安装 Docker 完毕之后,我们可以通过执行 docker 命令来验证是否安装成功,执行命令如下所示:

docker

命令执行之后,Docker 返回的信息如下图所示:

在这里插入图片描述

在上图中可以看到 Docker 返回的帮助信息,说明我们安装 Docker 已经成功。

下载 Gitlab 镜像

接着我们使用 Docker 去下载 gitlab的镜像,Docker 下载 Gitlab 镜像的命令如下所示:

docker pull gitlab/gitlab-ce

命令执行完毕之后,Docker 返回的信息如下图所示:

在这里插入图片描述

在上图中可以看到下载进行已经完成,这个下载的时间会根据你网速来决定,接着我们可以通过查看镜像列表来确认是否下载成功,执行命令如下所示:

docker images

命令执行完毕之后,Docker 返回的镜像列表如下图所示:

在这里插入图片描述

在上图中可以看到gitlab/gitlab-ce这个镜像,说明已经下载到本地了。接着我们先装备几个文件夹,这些文件夹将来要映射到 Gitlab 这个服务中,这样数据便会产生在这几个文件夹里面,将来做数据迁移更方便,建立相关存储文件夹,config 配置文件、logs 日志文件、 data 数据文件,执行的命令如下所示:

mkdir -p ~/config/gitlab/config
mkdir -p ~/config/gitlab/logs
mkdir -p ~/config/gitlab/data

命令执行完毕之后,我们使用ls命令确认一下,返回的信息文件夹列表如下所示:

在这里插入图片描述

在上图中可以看到三个文件夹已经创建成功,他们的绝对路径位于:

/root/config/gitlab/config
/root/config/gitlab/logs
/root/config/gitlab/data
运行Gitlab容器

接着,我们就可以使用 Gitlab 镜像来启动容器实例,Gitlab 提供 http 和 https 服务,我们将容器实例的443端口映射到宿主机的8443端口,容器实例的80端口映射到宿主机的53380端口,容器实例的22端口映射到宿主机的2222端口,接着把我们刚才创建好的配置文件夹、日志文件夹、数据文件夹挂载到容器里面去,最终的启动脚本命令为:

docker run --detach --publish 8443:443 --publish 53380:80 --publish 2222:22 --name gitlab --restart always -v /root/config/gitlab/config:/etc/gitlab -v /root/config/gitlab/logs:/var/log/gitlab -v /root/config/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce
在这里插入图片描述

在上图中可以看到一个容器实例的 ID,也可以通过查看容器列表来查看当前有几个容器在运行,查看运行的容器列表命令如下所示:

docker ps

命令执行完毕之后,docker返回的容器列表如下所示

CONTAINER         ID               IMAGE              COMMAND              CREATED   STATUS                 PORTS     
NAMES
47f3b91c7e3c  gitlab/gitlab-ce    "/assets/wrapper"   28 seconds ago      Up 26 seconds (health: starting)   0.0.0.0:2222->22/tcp, 0.0.0.0:8090->80/tcp, 0.0.0.0:8443->443/tcp   gitlab

在可以看到目前只有一个 Gitlab 容器在运行,我们可以通过docker logs命令查看容器的标准输出日志,执行命令如下所示

docker logs -f gitlab

命令执行完毕之后,可以看到初始化的过程,当初始化完成之后,能看到如下图所示的信息:

在这里插入图片描述
Gitlab管理配置

启动完成之后,我们就可以打开 Gitlab 的 web 管理页面进行管理了,在浏览器中输入网址:http://localhost:8090即可进入Gitlab 页面,首次进入管理页面时候,会让你设置 root 用户的密码,直接修改密码即可

但是也可能出现如下情况,没有出现设置密码界面,如下图所示:

在这里插入图片描述

默认用户名为root,默认密码需要自己设置。

如何设置呢?接着往下看

首先寻找创建的gitlab容器名称

docker ps

进入GitLab容器

docker exec -it 容器名称 bash

启动Ruby on Rails控制台

gitlab-rails console -e production

搜索电子邮件或用户名

user = User.where(id: 1).first

更改密码

user.password = 'your_pass'

确认更改密码

user.password_confirmation = 'your_pass'

保存

user.save!

修改登录成功,如下图所示:

在这里插入图片描述
注册新用户

新用户注册后,如下图所示。

在这里插入图片描述

这是因为注册账户后需要管理员审批,登录管理员账户-右上角点击

在这里插入图片描述

点击头像按钮

在这里插入图片描述

选择用户-等待审批-审批批准

在这里插入图片描述

批准权限

在这里插入图片描述

通过后,新注册的用户即可登录使用Git服务

git push遇到的问题

在push本地文件的时候,报如下错误:RPC failed; curl 56 Recv failure: Connection was reset.’

解决方法,打开cmd,修改git配置(加大httpBuffer) 即可

git config --global http.postBuffer 524288000
从gihub导入项目遇到的问题

在导入github项目的时候,填写token之后,遇到下图错误

在这里插入图片描述

由于时间紧迫,因此采取了折中办法来导入项目。

首先,注册gitlab官方网站账号,将github项目导入其中,然后将官方的gitlab项目导入我们自己搭建的gitlab项目,就可以了。

在这里插入图片描述
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门