【运维脚手架】之GitLab

本文详述了如何使用Docker-compose在CentOS服务器上安装GitLab,强调了数据安全与传输效率,并介绍了Idea、TortoiseGit与Jenkins的集成方法,确保代码管理和自动化部署的顺畅进行。
摘要由CSDN通过智能技术生成

开源推动社会进步,不过商场如战场,目前大部分商业策略中,企业产品源代码一般不太合适直接开源,产品代码大都不是很合适直接放GitHub、GitEE上,企业常规做法是搭建局域网仓库,还能提高传输速度,其中GitLab是个不错的选择!

本文讲解GitLab采用容器化的安装方法及三种主要应用场景。

一、GitLab安装配置

Docker环境规划及安装

Docker的搭建可以参考之前的【运维脚手架】相关文档,这里不赘述。

服务器规划

  • 我们先准备一台服务器,可以是虚拟机,使用centos7 64位最新版
  • 服务器挂载一块独立大硬盘,路径是/usr/local/docker/,条件允许可以挂在网络安全存储,用于数据卷挂载,后续做容器漂移、重装升级都可以妥善保护数据。

容器安装
采用Docker-compose安装,以下代码,复制到ssh终端执行即可,下文配置如下:

  • 容器的数据卷、配置信息统一挂docker下的专属目录,其他应用类似
  • compose脚本中指定了镜像、容器的运行端口及数据卷信息
  • compose脚本可随时修改配置信息,下方脚本提供了日常使用脚本
mkdir -p /usr/local/docker/gitlab_docker
cd /usr/local/docker/gitlab_docker
tee docker-compose.yml <<-'EOF'
version: '3.1'
services:
  gitlab:
    image: 'gitlab/gitlab-ce:latest'
    container_name: gitlab
    restart: always
    environment:
      GITLAB_OMNIBUS_CONFIG: |
        external_url 'http://192.168.20.151:8929'
        gitlab_rails['gitlab_shell_ssh_port'] = 2224
    ports:
      - '8929:8929'
      - '2224:2224'
    volumes:
      - './config:/etc/gitlab'
      - './logs:/var/log/gitlab'
      - './data:/var/opt/gitlab'
EOF

docker-compose up -d
docker-compose logs -f
docker exec -it gitlab bash

GitLab简单配置

  • root初始密码修改

初始密码一般是非人类可记忆的,通过shell查询初始密码,在网站中进行修改

# 登录页面修改默认密码
docker exec -it gitlab cat /etc/gitlab/initial_root_password
  • 添加团队成员用户
    站点支持用户自注册管理员审批、管理员手工开通并邮件告知两种操作,推荐前者!

二、代码管理之Idea集成GitLab

版本管理最频繁的就是代码的维护了,目前java最主流的就是idea了,关于idea的使用可以查询作者其他相关文档。

集成使用有个通用流程,不然容易掉坑里这边叨叨两句:

  • 先在gitlab上创建项目,配置好相关人员读写权限;
  • idea中创建项目,初始化git本地仓库管理。
  • idea中对项目测试ok,连接远程gitlab仓库,推送代码。
  • 团队成员首次使用,直接拉取gitlab远程代码,然后协同开发即可

开始水代码啦~

  • 步骤一: gitlab上创建项目,设为public,默认不创建readme,省去冲突合并的麻烦 image-20220426182311706

  • 步骤二: idea端本地代码管理

# idea控制台执行gitlab的声明账号信息

git config --global user.name "linzh"  
git config --global user.email "linzhihui@hotmail.com"

idea对工程初始化git本地仓image-20220426182322286

idea将项目提交本地仓管理 image-20220426182329494

  • 步骤三: idea将项目推到gitlab上 image-20220426182335394
    点击origin设置远端git地址 image-20220426182340583

输入gitlab的账号密码 image-20220426182345405

  • 步骤四: gitlab上检查代码正确提交上来了! image-20220426182350985

注:团队其他成员端拉取代码,同github操作,点击上方clone按钮,拷贝http地址即可

三、桌面文档处理之TortoiseGit集成GitLab

处理文档的版本管理和协同编制,桌面端工具有官方的git-scm,不过作为svn的乌龟老用户,还是习惯同家族的TortoiseGit,还是熟悉的味道、熟悉的配方!

使用方面,免费下载,一路next到底,找个盘大活好的文件夹右键clone我们的项目即可,不是很复杂,一切操作都有可以在右键中找到答案,日常可能会碰到以下需求:

  • 首次使用或需要更改本地用户名和邮箱的
  • 同步冲突需要清理本地缓存
  • 需要查看文档被误删或历史版本等等

都可以在这里找到,不过太古早的版本可能会被服务器清理掉,还是及时更新、及时处理吧,这是个好习惯

四、服务端代码集成之Jenkins集成GitLab

微服务里面的快速集成主要讲的就是这里啦,常见代码合并到主干、打上特别TAG,Jenkins就自动将最新代码拉取下来,发布到指定环境,一般是先发送到测试环境,有点类似流水线操作,具体操作我们将在Jenkins或微服务篇章中详细讲解,这里描述集成GitLab的操作部分。

  • 新建item

image-20220426214324985

  • 添加测试任务名称,选择自由格式 image-20220426214333983

  • 添加git仓库 image-20220426214339663
    一般拉取代码是不需要用户认证的,如果有权限控制,在上图的Credentials进行添加

  • 保存后查看控制台日志 image-20220426214345265

  • 根据日志路径查看代码生成 image-20220426214350967

写在最后

目前Gitee规则升级、GitHub被微软收购,之前还爆出大新闻,有个好工具不容易,很多东西还是掌握在自控范围内,比较稳定可靠;另外Docker管理常用工具真的是超级方便,后续将持续输出类似产品给有需要的朋友!

与您的互动是我持续创作的动力!【一键三连是人类进步的阶梯!】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值