架构

  • Load Balancer:用于将请求路由到 GitLab 组件;例如,可以使用 NGINX Ingress 控制器或 ALB。
  • GitLab Pages:允许您直接从 GitLab 仓库发布静态网站的功能。
  • GitLab Workhorse:设计为智能反向代理,用于加速整个 GitLab 的响应速度。
  • GitLab Shell:用于处理基于 SSH 的 git 会话,并管理授权密钥列表。
  • Puma:一个 Ruby 应用服务器,用于运行提供用户界面功能的核心 Rails 应用。
  • Sidekiq:一个 Ruby 后台任务处理器,从 Redis 队列中拉取任务并执行。
  • Gitaly:旨在消除分布式部署中对 NFS 进行 Git 存储依赖的服务。
  • Redis:用于存储会话数据、缓存数据和后台任务数据。
  • PostgreSQL:用于存储 GitLab 应用的数据。

有关各组件的详细信息,请参阅官方 GitLab 文档