GitLab

简介

GitLab 是一个基于 Git 的开源协作开发平台。它不仅提供代码托管服务,还集成了项目管理、CI/CD、监控等一系列功能,为软件开发团队提供了一站式的解决方案。

GitLab 的主要功能:

  • 代码托管: 与 GitHub 类似,GitLab 可以用来托管 Git 仓库,方便团队协作开发。
  • 问题跟踪: 可以创建、跟踪和管理项目中的问题、任务和特性请求。
  • 合并请求: 通过合并请求的方式来合并代码,方便代码审查和讨论。
  • Wiki: 创建和维护项目的文档,方便团队成员查阅。
  • CI/CD: 内置强大的 CI/CD 功能,可以自动化构建、测试和部署应用程序。
  • 容器注册表: 可以用来存储和管理容器镜像。
  • 监控: 提供对应用程序的性能监控。

GitLab 的优势:

  • 开源免费: 社区版完全免费,可以部署在自己的服务器上,对企业来说更具成本效益。
  • 功能强大: 集成了众多功能,覆盖了软件开发的整个生命周期。
  • 高度可定制: 可以根据团队的需求进行定制化配置。
  • 社区活跃: 有一个庞大的社区,可以提供丰富的文档和支持。

GitLab 与 GitHub 的区别:

特点 GitHub GitLab
定位 主要面向开源项目和个人开发者 更面向企业,提供更全面的 DevOps 功能
功能 代码托管、问题跟踪、Pull Request 代码托管、问题跟踪、Pull Request、CI/CD、Wiki、容器注册表等
自托管 部分功能收费 社区版可免费自托管
CI/CD 需要第三方工具 自带强大的 CI/CD 功能

安装

# 首先保证linux环境已安装了docker和docker-compos

# 拉取镜像,有中文的镜像,但是很久没更新了,还是用官方社区的吧
docker pull gitlab/gitlab-ce

创建如下的 docker-compose.yml 文件

version: '3.1'
services:
  gitlab:
    image: 'gitlab/gitlab-ce:latest'
    container_name: gitlab
    restart: always
    environment:
      GITLAB_OMNIBUS_CONFIG: |
      # gitlab访问地址,要改成自己的,如果端口不写的话默认为80端口
        external_url '<http://192.168.119.5:8929>'  
        gitlab_rails['gitlab_shell_ssh_port'] = 2224  # ssh连接端口
    ports:
      - '8929:8929'
      - '2224:2224'
    volumes:
      - './config:/etc/gitlab'
      - './logs:/var/log/gitlab'
      - './data:/var/opt/gitlab'

根据 docker-compose.yml 文件启动容器,这个过程会比较久,我大概用了3分钟

# 重启docker环境
systemctl restart docker
# 根据dockerCompose启动gitlab容器
docker-compose up -d
# 查看安装进度(也可以不看),安装过程比较耗时,耐心等待下
docker-compose logs -f
# 进入容器,在initial_root_password文件查看初始化root密码
docker exec -it gitlab bash
vi /etc/gitlab/initial_root_password

验证: 浏览器访问http://192.168.119.5:8929 登录root账号,并修改密码。如下图所示:

使用就和 Github 没多大区别,就不说了。

SystemCaller
SystemCaller

https://gravatar.com/noisily745e35dad0

文章: 47

留下评论

您的邮箱地址不会被公开。 必填项已用 * 标注