【玩转Docker容器 6】基于Docker构建GitLab管理代码


推荐个人Docker文章,讲的非常详细

【玩转Docker容器 1】Dockerd的详解及安装
【玩转Docker容器 2】基于Docker一分钟搭建完 Jdk、Mysql、Nginx、Redis、Tomcat环境
【玩转Docker容器 3】基于Docker部署SpringBoot项目
【玩转Docker容器 4】基于Docker搭建Docker私服,以及如何使用Docker私服详解
【玩转Docker容器 5】基于Docker搭建Maven私服,以及项目如何使用Maven私服详解
【玩转Docker容器 6】基于Docker构建GitLab管理代码
【玩转Docker容器 7】基于Docker安装Jenkins实现自动化构建、部署、测试、监控项目

1.什么是GitLab

GitLab 是一个用于仓库管理系统的开源项目,是一个基于Git实现的在线代码管理仓库软件(一般都是私有的,用于在企业、学校等内部网络搭建的git私服)
在这里插入图片描述

2.Git GitHub GitLib GitLab有什么区别

Git 是一种版本控制系统,是一个命令工具,实现上传下载
GitLib 是用于实现Git 功能的开发库
GitHub 是一个基于Git 实现的在线代码仓库,向互整个互联网开放
GitLab 是一个基于Git 实现的在线代码仓库软件,你可以用gitlab自己搭建一个类似于GitHub一样的系统,(一般都是私有的,用于在企业、学校等内部网络搭建的Git 私服)

3.基于Docker部署GitLab环境搭建

1.下载GitLab镜像文件

注意:我这里是已经搭建了Docker的Linux系统,不会的可以看我之前的文章

下载命令:有可能比较慢,而且运行起来比较耗内存
注意:一定要配置阿里云的加速镜像,要不然下载要个把小时
docker pull beginor/gitlab-ce:11.0.1-ce.0

在这里插入图片描述

2.创建GitLab配置

把GitLab的配置 (etc) 、 日志 (log) 、数据 (data) 放到容器之外, 用于以后升级, 因此请先准备这三个目录。以后更新或者卸载容器,GitLab的重要文件也还存在

mkdir -p /mnt/gitlab/etc
mkdir -p /mnt/gitlab/log
mkdir -p /mnt/gitlab/data

在这里插入图片描述

3.运行GitLab容器

docker run \
    --detach \
    --publish 8443:443 \
    --publish 8877:80 \
    --name gitlab \
    --restart unless-stopped \
    -v /mnt/gitlab/etc:/etc/gitlab \
    -v /mnt/gitlab/log:/var/log/gitlab \
    -v /mnt/gitlab/data:/var/opt/gitlab \
    beginor/gitlab-ce:11.0.1-ce.0 

在这里插入图片描述

4.设置Http访问GitLab

修改/mnt/gitlab/etc/gitlab.rb

扫描二维码关注公众号,回复: 9824572 查看本文章
编辑文件:
vi /mnt/gitlab/etc/gitlab.rb

找到GitLab URL
有可能没有注释:注意,没有注释就加上这一条
在这里插入图片描述
把最后一行取消注释,改成:http://IP地址,这里写自己的IP地址
没有注释也加上这一条

external_url 'http://120.77.0.58'

在这里插入图片描述
输入esc退出编辑模式,再输入:wq保存并退出

5.将host的值改成映射的外部主机ip地址和端口

修改/mnt/gitlab/data/gitlab-rails/etc/gitlab.yml

编辑文件:
vi /mnt/gitlab/data/gitlab-rails/etc/gitlab.yml

找到关键字 * ## Web server settings *
将host的值改成映射的外部主机ip地址和端口,这里会显示在gitlab克隆地址
在这里插入图片描述
改成:自己的IP地址 端口号,一定要关闭端口号防火墙哟,要不然无法访问,端口号默认是80也可以,这个无所谓
在这里插入图片描述
输入esc退出编辑模式,再输入:wq保存并退出

6.重启GitLab容器,实现访问

输入查看容器命令,找到git容器id:
docker ps

停止容器:
docker stop 容器id

删除容器:
docker rm 容器id

启动gitLab镜像:
docker run \
	--detach \
	--publish 8443:443 \
	--publish 8877:80 \
	--name gitlab \
	--restart unless-stopped \
	-v /mnt/gitlab/etc:/etc/gitlab \
	-v /mnt/gitlab/log:/var/log/gitlab \
	-v /mnt/gitlab/data:/var/opt/gitlab \
	beginor/gitlab-ce:11.0.1-ce.0 

在这里插入图片描述
启动后等待30秒左右,30秒之前访问可以会抱错502,等待一下就好了

访问http://120.77.0.58:8877/
成功!
在这里插入图片描述

4.如何使用GitLab实现项目管理

1.登陆

第一次进入要设置密码,自己设置就行了
在这里插入图片描述
设置完之后登陆,用户名是root,密码是你刚刚设置的,也许设置密码会抱错,但是还是可用使用的,登陆
在这里插入图片描述

2.创建项目

在这里插入图片描述
这里输入名称,设置可见点击为私有,点击创建
在这里插入图片描述
在这里插入图片描述

3.创建其他用户,赋予权限

1.退出登录
在这里插入图片描述

2.注册一个新的用户
在这里插入图片描述

3.注册完了先不登录,这时使用一开始的登录root用户去赋予权限

这是root用户下的界面,在root用户进行操作

1.点击到设置–>成员里面去
在这里插入图片描述
2.选择成员,选择权限(选择开发人员),点击添加
在这里插入图片描述

看此下下方,已成功添加
在这里插入图片描述

3.切换用户登录
发现已经有项目了
在这里插入图片描述

3.使用Git上传下载项目

我这里是配置不是root用户,我配置的是新添加的用户,其实操作是一样的,新用户上传第一次上传都需要配置

1.第一次上传登录

在本地安装git工具,安装完成后需要配置全局的用户名和邮箱。

打开git bash 输入如下命令:(命令位置在GitLab仓库里面可以看得到)
git config --global user.name "李杰"
git config --global user.email "[email protected]"

在这里插入图片描述
在这里插入图片描述

2.提交项目

其实这里命令都已经告诉我们了,只需要复制粘贴就好了,这里有一个地方不一样,注意

上传命令:

git init
注意:这条命令不一样,要加上设置的端口号
git remote add origin http://120.77.0.58:8877/root/boot-tool.git
git add .
git commit -m "Initial commit"
git push -u origin master

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

成功
在这里插入图片描述

3.下载项目

1.创建一个本地的版本库(即新建一个文件夹)
在这里插入图片描述

2.选中文件夹右键–Git bash here–进入控制面板,

输入命令git init 初始化化文件夹,把这个文件夹变成Git可管理的仓库
git init

3.把gitee(码云)上的项目地址复过来,

git clone "你的仓库地址",点击回车,注意要加端口号
git clone http://120.77.0.58:8877/root/boot-tool.git

在这里插入图片描述
本地查看 成功
在这里插入图片描述

发布了49 篇原创文章 · 获赞 52 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/weixin_43122090/article/details/104839090