Ubuntu安装GitLab

在 Ubuntu 上安装 GitLab 的步骤如下。这里以 GitLab Community Edition(CE)为例:

前提条件

  1. 确保你的 Ubuntu 系统是 20.04 或更高版本。
  2. 确保你的系统满足 GitLab 的硬件要求。

步骤

  1. 更新系统包:

    bash 复制代码
    sudo apt update
    sudo apt upgrade -y
  2. 安装依赖项:

    bash 复制代码
    sudo apt install -y curl openssh-server ca-certificates tzdata perl
  3. 添加 GitLab 包仓库 :

    首先,安装 GitLab 的官方 GPG 密钥:

    bash 复制代码
    curl https://packages.gitlab.com/gpg.key | sudo apt-key add -

    然后,添加 GitLab 的源:

    bash 复制代码
    sudo tee /etc/apt/sources.list.d/gitlab_gitlab-ce.list <<EOF
    deb https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu/ $(lsb_release -cs) main
    EOF
  4. 更新包索引:

    bash 复制代码
    sudo apt update
  5. 安装 GitLab :

    使用以下命令安装 GitLab:

    bash 复制代码
    sudo apt install gitlab-ce
  6. 配置 GitLab :

    安装完成后,运行以下命令来配置 GitLab:

    bash 复制代码
    sudo gitlab-ctl reconfigure
  7. 访问 GitLab :

    安装和配置完成后,打开浏览器,访问你的服务器 IP 地址或域名。默认情况下,GitLab 会在 80 端口上运行。你可以通过以下 URL 访问:

    复制代码
    http://your_server_ip
  8. 设置管理员密码 :

    在你安装 GitLab 后,系统会生成一个默认的管理员账户,其用户名为 root,但初始密码不会直接显示在终端中,而是存储在 /etc/gitlab/initial_root_password 文件中。以下是你可以采取的步骤来获取和使用这个初始密码:

    你可以使用以下命令查看存储在文件中的初始密码:

    bash 复制代码
    sudo cat /etc/gitlab/initial_root_password //查看初始密码

    记下这个密码,因为你需要它来登录 GitLab。

其他配置

  • 如果你希望使用 HTTPS,建议安装和配置 SSL 证书。可以使用 Let's Encrypt 来获取免费的 SSL 证书。
  • 你可以根据需要调整 GitLab 的配置文件,通常位于 /etc/gitlab/gitlab.rb。

维护和管理

  • 启动 GitLab:

    bash 复制代码
    sudo gitlab-ctl start
  • 停止 GitLab:

    bash 复制代码
    sudo gitlab-ctl stop
  • 检查 GitLab 状态:

    bash 复制代码
    sudo gitlab-ctl status

注意事项

  • GitLab 对系统资源的要求较高,确保你的服务器有足够的 CPU、内存和存储空间。
  • 定期备份 GitLab 数据。
相关推荐
qetfw11 小时前
UOS DHCP Relay:跨网段分配与 IP、DNS、网关验证
linux·服务器·网络·tcp/ip·uos
叼烟扛炮13 小时前
Linux 学习笔记(四十一):TCP 并发演进——从单进程到多线程服务器
linux·运维·服务器·网络·笔记·学习·tcp/ip
ynchyong13 小时前
Linux 有两个 “版本“
linux·发行版·内核版本
叼烟扛炮13 小时前
Linux 学习笔记(四十四):HTTP 协议解析与极简 Web 服务器实战
linux·服务器·学习
叼烟扛炮14 小时前
Linux 学习笔记(四十三):网络编程进阶——自定义协议解决 TCP 粘包与守护进程
linux·开发语言·网络·笔记·tcp/ip
Escalating_xu14 小时前
【Linux 网络编程】DNS 与 ICMP:从域名解析到 ping、traceroute,把“网络通不通”问清楚
linux·网络·php
如若12316 小时前
Windows SSH + Headscale/Tailscale 组网及免密登录完整配置教程
运维·windows·ubuntu·ssh·内网穿透
一枕槐安48716 小时前
大模型限流、重试、超时处理:API 调用健壮性方案
linux·服务器·php·大模型api·指数退避·限流控制·超时预算
西索斯coding16 小时前
gpt-image-2.5-sunburst 和 gemini-3.1-flash-image 差多少?60 组项目素材的成功成本评测框架
java·linux·gpt·ai
箓维16 小时前
应用层协议基础_序列化与反序列化
linux