Docker compose 搭建 GitLab 代码托管中心

什么是 GitLab

概述

GitLab 是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的 Git 项目仓库,可通过 Web 界面进行访问公开的或者私人项目。它拥有与 Github 类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序 (Wall) 进行交流。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。


基于 Docker 安装 GitLab

我们使用 Docker 来安装和运行 GitLab 中文版,由于新版本问题较多,这里我们使用目前相对稳定的 10.5 版本,docker-compose.yml 配置如下:

version: '3'
services:
    web:
      image: 'twang2218/gitlab-ce-zh:10.5'
      restart: always
      hostname: '192.168.1.130'  #主机名,ip地址或域名
      environment:
        TZ: 'Asia/Shanghai'
        GITLAB_OMNIBUS_CONFIG: |
          external_url 'http://192.168.1.130:80'  #外部访问地址
          gitlab_rails['gitlab_shell_ssh_port'] = 2222 #ssh端口
          unicorn['port'] = 8888 #gitlab内部端口
          nginx['listen_port'] = 80  #必须有nginx反向代理才能访问网页,监听端口号必须和外部访问地址一致
      ports: #域名暴露
        - '80:80'     #访问端口
        - '8443:443'  #ssl端口
        - '2222:22'   #ssh段鸥
      volumes: #数据卷
        - /usr/local/docker/gitlab/config:/etc/gitlab
        - /usr/local/docker/gitlab/data:/var/opt/gitlab
        - /usr/local/docker/gitlab/logs:/var/log/gitlab

安装完成后的工作

访问地址:http://ip:8080
端口 8080 是因为我在配置中设置的外部访问地址为 8080,默认是 80
初始化安装完成后效果如下:

在这里插入图片描述
设置管理员初始密码,这里的密码最好是 字母 + 数字 组合,并且 大于等于 8 位
配置完成后登录,管理员账号是 root在这里插入图片描述

注意: 如果服务器配置较低,启动运行可能需要较长时间,请耐心等待


GitLab 的基本设置

第一次使用时需要做一些初始化设置,点击“管理区域”–>“设置”
在这里插入图片描述

账户与限制设置

关闭头像功能,由于 Gravatar 头像为网络头像,在网络情况不理想时可能导致访问时卡顿
在这里插入图片描述

注册限制

由于是内部代码托管服务器,可以直接关闭注册功能,由管理员统一创建用户即可

在这里插入图片描述


GitLab 的账户管理

使用时请不要直接通过 root 用户操作,需要先创建用户,然后通过创建的用户操作,如果你是管理员还需要为其他开发人员分配账户

创建用户

点击“管理区域”–>“新建用户”

在这里插入图片描述

设置账户信息

同时你可以将自己设置为管理员

在这里插入图片描述

修改用户密码

由于我们创建时并没有配置邮箱,所以还需要重新编辑用户信息并手动设置密码

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

退出并使用新账户登录

在这里插入图片描述

注意:创建完账户,第一次登录时还会提示你修改登录密码


GitLab 创建第一个项目

新建项目

点击 + 号 --> 新建项目

在这里插入图片描述

输入项目名称及描述信息,设置可见等级为私有,这样别人就看不见你的项目

在这里插入图片描述

初始化项目

我们选择通过增加一个 README 的方式来初始化项目
在这里插入图片描述

直接提交修改即可

在这里插入图片描述

使用 SSH 的方式拉取和推送项目

生成 SSH KEY

使用 ssh-keygen 工具生成,位置在 Git 安装目录下,我的是 C:\Program Files\Git\usr\bin

输入命令:

ssh-keygen -t rsa -C "your_email@example.com"  -f  C:\Users\Administrator\.ssh\is_rsa_gitlab
  • -C git用户名
  • -f 密匙生成地址

执行成功后的效果:

Microsoft Windows [版本 10.0.14393]
(c) 2016 Microsoft Corporation。保留所有权利。

C:\Program Files\Git\usr\bin>ssh-keygen -t rsa -C "topsale@vip.qq.com"  -f       C:\Users\Administrator\.ssh\is_rsa_gitlab
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/Lusifer/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/Lusifer/.ssh/id_rsa.
Your public key has been saved in /c/Users/Lusifer/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:cVesJKa5VnQNihQOTotXUAIyphsqjb7Z9lqOji2704E topsale@vip.qq.com
The key's randomart image is:
+---[RSA 2048]----+
|  + ..=o=.  .+.  |
| o o + B .+.o.o  |
|o   . + +=o+..   |
|.=   .  oo...    |
|= o     So       |
|oE .    o        |
| .. .. .         |
| o*o+            |
| *B*oo           |
+----[SHA256]-----+

C:\Program Files\Git\usr\bin>
  • Enter passphrase (empty for no passphrase) : 密匙密码,直接回车为空

复制 SSH-KEY 信息到 GitLab

秘钥位置在:C:\Users\你的用户名\.ssh目录下,找到id_rsa_gitlab.pub并使用编辑器打开,如:

在这里插入图片描述

登录 GitLab,点击“用户头像”–>“设置”–>“SSH 密钥”

在这里插入图片描述

成功增加密钥后的效果
在这里插入图片描述

使用 SourceTree克隆项目

首先添加ssh密匙

在这里插入图片描述

选中刚才生成的密匙,注意,选择的是私匙,不带pub后缀的

在这里插入图片描述

公匙设置了密码的,按提示输入密码

在这里插入图片描述

设置连接方式为OpenSSH模式

在这里插入图片描述

粘贴gitlab的仓库地址,复制项目

在这里插入图片描述

成功克隆项目到本地

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值