docker Gitlab 安装、配置、部署、使用

安装部署

自动备份

备份恢复

密码设置

一.镜像容器

1.安装docker 

yum install docker

使用yum命令在线安装

安装后查看Docker版本

docker -v

2. 查找GitLab镜像

docker search gitlab

3. 拉取镜像

docker pull gitlab/gitlab-ce:latest

4. 创建容器

创建挂载目录

mkdir -p  /app/gitlab/config
mkdir -p /app/gitlab/logs
mkdir -p  /app/gitlab/data
chmod 777 -R /app/gitlab/config
chmod 777 -R /app/gitlab/logs
chmod 777 -R /app/gitlab/data
/app/gitlab/config 配置文件路径
/app/gitlab/logs 日志路径
/app/gitlab/data 存储数据路径
启动容器
docker run \
-d  \
-p 443:443 -p 8080:80 -p 22222:22 \
--name gitlab \
--restart always \
-v /app/gitlab/config:/etc/gitlab \
-v /app/gitlab/logs:/var/log/gitlab \
-v /app/gitlab/data:/var/opt/gitlab \
--privileged=true \
gitlab/gitlab-ce:latest

注:

–privileged=true 添加权限,不然无权限创建/app/gitlab/config/gitlab.rb等配置文件

宿主机目录会自动创建(/app/gitlab/config、/app/gitlab/logs、/app/gitlab/data)

二、修改配置文件

前言:按上面的方式,gitlab容器运行没问题,但在gitlab上创建项目的时候,生成项目的URL访问地址是按容器的hostname来生成的,也就是容器的id。作为gitlab服务器,我们需要一个固定的URL访问地址,于是需要配置gitlab.rb(宿主机路径:/srv/gitlab/config/gitlab.rb)

2.1. gitlab.rb  

gitlab.rb文件内容默认全是注释

编辑gitlab.rb
配置http协议所使用的访问地址,不加端口号默认为8080

vim /app/gitlab/config/gitlab.rb

添加external_url

external_url 'http://192.168.43.204'

添加访问地址和端口
配置ssh协议所使用的访问地址和端口

gitlab_rails['gitlab_ssh_host'] = '192.168.92.129'

此端口是run时22端口映射的22222端口

gitlab_rails['gitlab_shell_ssh_port'] = 22222

保存配置文件并退出

:wq 

附上配置信息:

# 配置http协议所使用的访问地址,不加端口号默认为80
external_url 'http://192.168.92.129'
# 配置ssh协议所使用的访问地址和端口
gitlab_rails['gitlab_ssh_host'] = '192.168.92.129'
gitlab_rails['gitlab_shell_ssh_port'] = 22222

2.2. 重启gitlab容器

docker restart gitlab

2.3. 监控日志

docker查看gitlab启动日志

docker logs -f gitlab
三、效果验证
3.1. 登录gitlab

打开浏览器输入ip地址(因为我的gitlab端口为80,所以浏览器url不用输入端口号,如果端口号不是80,则打开为:ip:端口号)

http://192.168.92.129:8080

3.2. 获取密码

docker Gitlab 初始化账号以及密码是什么呢?
之后点击登录

 

 
gitlab首页展示
3.3. 创建一个项目

下面我们就可以新建一个项目了,点击Create a project

 

四、用户使用
1.下载git.exe
双击git.exe安装git(一直点下一步,直到完成)
点击电脑桌面空白地方右键看到如下两行即安装成功

4.2. 设置ssh

打开本地git bash,使用如下命令生成ssh公钥和私钥对

ssh-keygen -t rsa -C 'xxx@xxx.com'

例如:

ssh-keygen -t rsa -C 'gbly02@gmail.com'

然后一路回车(-C 参数是你的邮箱地址)

4.3. 秘钥查验

~表示用户目录,比如我的windows就是C:\Users\Administrator,并复制其中的内容

#私钥查看
cat ~/.ssh/id_rsa.pub

#将私钥添加到SSH代理中

start-ssh-agent
ssh-add ~/.ssh/id_rsa

4.4. 秘钥同步

把公钥添加到远程gitlab仓库中
打开gitlab,找到Profile Settings–>SSH Keys—>Add SSH Key,并把上一步中复制的内容粘贴到Key所对应的文本框

或者打开:C:\Users\Administrator.PC-20180929LWLP.ssh\找到id_rsa.pub打开,复制,粘贴即可

4.5. 查看ssh key

五、克隆代码

从gitlab克隆代码
回到gitlab页面点击projects->your projects

5.1. 选择项目

5.2. 链接拷贝

复制项目;链接地址

5.3. 代码验证
进入拉取代码到本地的路径下面
新建一个文件夹,我在这里在我的电脑D盘下新建project文件夹,或者在你想把项目拉取/存放的目录下面

5.4. 命令变更
右键选择->Git Bash Here

5.5. 初始配置

设置用户名和邮箱

git config --global user.name "你的名字"
git config --global user.email "你的邮箱"

案例:

git config --global user.name "guobin_wb"
git config --global user.email "gbly02@gamil.com"

5.6. 全局配置

查看git全局配置信息

git config --global --list

5.7. 克隆项目

git clone 项目地址
案例:

 git clone ssh://git@192.168.43.204:222/root/gitlab-test.git

5.8. 项目检验

在本地目录下面查看,从远程拉取的项目

从上面可以看出,项目已经从远程拉取下来了

六、版本同步
本地项目推送远程(gitlab仓库)

6.1. 进入项目

cd gitlab-test/

  

6.2. 新增文件

添加测试文件

echo "test local project push remote rep" > gblf.txt

6.3. 文件状态

查看git 变更文件状态

git status

注:
红色部分代表:需要提交的文件
红色变更文件只在工作区,尚未添加至暂存区

6.4. 变更添加
将变更的文件添加在暂存区
git add gblf.txt
注:
git add . :指所有变更的文件
git add 文件名 :指:单个变更文件
git add 文件名 文件名 :指多个变更文件

  

6.5. 版本提交

提交至本地仓库并添加提交信息

git commit -m "first commit project "

  

注:
git commit -am "first commit project "和上面的区别:
第二个可以省去git add 这个步骤

  

6.6. 远程推送

将本地仓库推送到远程,也就是提交到gitlab

git push origin master

  

6.7. 远程查看

 

 
posted @ 2022-10-13 11:01  刘小吉  阅读(1492)  评论(0编辑  收藏  举报