如何在 Ubuntu/Fedora/Debian 中安装 GitLab
2025-11-27 03:25:36阅读量:11 字体:大 中 小
在 Git 问世之前,分布式版本控制从来都不是一件简单的事。Git 是一个自由开源的软件,旨在轻松且快速地对从小规模到非常巨大的项目进行管理。Git 最开始由 Linus Torvalds 开发,他同时也是著名的 Linux 内核的创建者。在 git 和分布式版本控制系统领域中,GitLab 是一个极棒的新产品。它是一个基于 web 的 Git 仓库管理应用,包含代码审查、wiki、问题跟踪等诸多功能。使用 GitLab 可以很方便、快速地创建、审查、部署及托管代码。尽管它在其官方的服务器提供了与 Github 类似的免费托管的代码仓库,但它也可以运行在我们自己的服务器上。GitLab 有两个不同的版本:社区版(Community Edition)和企业版(Enterprise Edition)。社区版本完全免费且开源,遵循 MIT 协议;而企业版则遵循一个专有的协议,包含一些社区版中没有的功能。下面介绍的是有关如何在我们自己的运行着 Ubuntu、Fedora 或 Debian 操作系统的机器上安装 GitLab 社区版的简单步骤。

首先,我们需要安装 GitLab 所依赖的软件包。我们将安装 curl,用以下载我们所需的文件;安装openssh-server ,以此来通过 ssh 协议登录到我们的机器上;安装ca-certificates,用它来添加 CA 认证;以及 postfix,把它作为一个 MTA(Mail Transfer Agent,邮件传输代理)。
注: 若要安装 GitLab 社区版,我们需要一个至少包含 2 GB 内存和 2 核 CPU 的 linux 机器。
在 Ubuntu 14 .04/Debian 8.x 中
鉴于这些依赖包都可以在 Ubuntu 14.04 和 Debian 8.x 的官方软件仓库中获取到,我们只需通过使用 apt-get 包管理器来安装它们。为此,我们需要在一个终端或控制台中执行下面的命令:
# apt-get install curl openssh-server ca-certificates postfix在 Fedora 22 中
在 Fedora 22 中,由于 yum 已经被弃用了,默认的包管理器是 dnf。为了安装上面那些需要的软件包,我们只需运行下面的 dnf 命令:
# dnf install curl openssh-server postfix2. 打开并开启服务现在,我们将使用我们默认的初始化系统来打开 sshd 和 postfix 服务。并且我们将使得它们在每次系统启动时被自动开启。
在 Ubuntu 14.04 中
由于在 Ubuntu 14.04 中安装的是 Sysvinit 初始化系统,我们将使用 service 命令来开启 sshd 和 postfix 守护进程:
# service sshd start# service postfix start现在,为了使得它们在每次开机启动时被自动开启,我们需要运行下面的 update-rc.d 命令:
# update-rc.d sshd enable# update-rc.d postfix enable在 Fedora 22/Debian 8.x 中
鉴于 Fedora 22 和 Debian 8.x 已经用 Systemd 代替了 SysVinit 来作为默认的初始化系统,我们只需运行下面的命令来开启 sshd 和 postfix 服务:
# systemctl start sshd postfix现在,为了使得它们在每次开机启动时可以自动运行,我们需要运行下面的 systemctl 命令:
# systemctl enable sshd postfixCreated symlink from /etc/systemd/system/multi-user.target.wants/sshd.service to /usr/lib/systemd/system/sshd.service.Created symlink from /etc/systemd/system/multi-user.target.wants/postfix.service to /usr/lib/systemd/system/postfix.service.3. 下载 GitLab现在,我们将使用 curl 从官方的 GitLab 社区版仓库下载二进制安装文件。首先,为了得到所需文件的下载链接,我们需要浏览到该软件仓库的页面。为此,我们需要在运行着相应操作系统的 linux 机器上运行下面的命令。
在 Ubuntu 14.04 中
由于 Ubuntu 和 Debian 使用相同的 debian 格式的安装包,我们需要在 https://packages.gitlab.com/gitlab/gitlab-ce filter=debs 下搜索所需版本的 GitLab,然后点击有着 ubuntu/trusty 标签的链接,即我们运行着的 Ubuntu 14.04。接着一个新的页面将会出现,我们将看到一个下载按钮,然后我们在它的上面右击,得到文件的链接,然后像下面这样使用 curl 来下载它。
# curl https://packages.gitlab.com/gitlab/gitlab-ce/packages/ubuntu/trusty/gitlab-ce_8.1.2-ce.0_amd64.deb在 Debian 8.x 中
与 Ubuntu 类似,我们需要在 https://packages.gitlab.com/gitlab/gitlab-ce filter=debs 页面中搜索所需版本的 GitLab,然后点击带有 debian/jessie 标签的链接,即我们运行着的 Debian 8.x。接着,一个新的页面将会出现,然后我们在下载按钮上右击,得到文件的下载链接。最后我们像下面这样使用 curl 来下载该文件。
# curl https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/jessie/gitlab-ce_8.1.2-ce.0_amd64.deb/download在 Fedora 22 中
由于 Fedora 使用 rpm 文件来作为软件包,我们将在 https://packages.gitlab.com/gitlab/gitlab-ce filter=rpms 页面下搜索所需版本的 GitLab,然后点击所需发行包的链接,这里由于我们运行的是 Fedora 22,所以我们将选择带有 el/7 标签的发行包。一个新的页面将会出现,在其中我们可以看到一个下载按钮,我们将右击它,得到所需文件的链接,然后像下面这样使用 curl 来下载它。
# curl https://packages.gitlab.com/gitlab/gitlab-ce/packages/el/7/gitlab-ce-8.1.2-ce.0.el7.x86_64.rpm/download4. 安装 GitLab在相应的软件源被添加到我们的 linux 机器上之后,现在我们将使用相应 linux 发行版本中的默认包管理器来安装 GitLab 社区版。
在 Ubuntu 14.04/Debian 8.x 中
要在运行着 Ubuntu 14.04 或 Debian 8.x linux 发行版本的机器上安装 GitLab 社区版,我们只需运行如下的命令:
# dpkg -i gitlab-ce_8.1.2-ce.0_amd64.deb在 Fedora 22 中
我们只需执行下面的 dnf 命令来在我们的 Fedora 22 机器上安装 GitLab。
# dnf install gitlab-ce-8.1.2-ce.0.el7.x86_64.rpm5. 配置和开启 GitLabGitLab 社区版已经成功地安装在我们的 linux 系统中了,接下来我们将要配置和开启它了。为此,我们需要运行下面的命令,这在 Ubuntu、Debian 和 Fedora 发行版本上都一样:
# gitlab-ctl reconfigure6. 允许通过防火墙假如在我们的 linux 机器中已经启用了防火墙程序,为了使得 GitLab 社区版的 web 界面可以通过网络进行访问,我们需要允许 80 端口通过防火墙,这个端口是 GitLab 社区版的默认端口。为此,我们需要运行下面的命令。
在 iptables 中
Ubuntu 14.04 默认安装和使用的是 iptables。所以,我们将运行下面的 iptables 命令来打开 80 端口:
# iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT# /etc/init.d/iptables save在 firewalld 中
由于 Fedora 22 和 Debian 8.x 默认安装了 systemd,它包含了作为防火墙程序的 firewalld。为了使得 80 端口(http 服务) 能够通过 firewalld,我们需要执行下面的命令。
# firewall-cmd --permanent --add-service=httpsuccess# firewall-cmd --reloadsuccess7. 访问 GitLab Web 界面最后,我们将访问 GitLab 社区版的 web 界面。为此,我们需要将我们的 web 浏览器指向 GitLab 服务器的网址,根据我们的配置,可能是 http://ip-address/ 或 http://domain.com/ 的格式。在我们成功指向该网址后,我们将会看到下面的页面。
现在,为了登录进面板,我们需要点击登录按钮,它将询问我们的用户名和密码。然后我们将输入默认的用户名和密码,即 root 和 5iveL!fe 。在登录进控制面板后,我们将被强制要求为我们的 GitLab root 用户输入新的密码。
8. 创建仓库在我们成功地更改密码并登录到我们的控制面板之后,现在,我们将为我们的新项目创建一个新的仓库。为此,我们需要来到项目栏,然后点击 新项目 绿色按钮。
接着,我们将被询问给我们的项目输入所需的信息和设定,正如下面展示的那样。我们甚至可以从其他的 git 仓库提供商和仓库中导入我们的项目。
做完这些后,我们将能够使用任何包含基本 git 命令行的 Git 客户端来访问我们的 Git 仓库。我们可以看到在仓库中进行的任何活动,例如创建一个里程碑,管理问题,合并请求,管理成员,便签,Wiki 等。
总结GitLab 是一个用来管理 git 仓库的很棒的开源 web 应用。它有着漂亮的带有诸多酷炫功能的响应式界面。它还打包有许多酷炫功能,例如管理群组,分发密钥,持续集成,查看日志,广播消息,钩子,系统 OAuth 应用,模板等。(注:OAuth 是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用。— 摘取自 维基百科上的 OAuth 词条) 它还可以和大量的工具进行交互如 Slack,Hipchat,LDAP,JIRA,Jenkins,有很多类型的钩子和完整的 API。它至少需要 2 GB 的内存和 2 核 CPU 来流畅运行,支持多达 500 个用户,但它也可以被扩展到多个工作服务器上。
假如你有任何的问题,建议,回馈,请将它们写在下面的评论框中,以便我们可以提升或更新我们的内容。谢谢!
免责声明:
本文《如何在 Ubuntu/Fedora/Debian 中安装 GitLab》版权归原作者所有,内容不代表本站立场!
如本文内容影响到您的合法权益(含文章中内容、图片等),请及时联系本站,我们会及时删除处理。
推荐阅读

为什么我的欧逸交易所身份认证失败了?原因和解决方案介绍
目录一、App 无法上传照片二、点击页面无反应三、无法打开摄像头四、人脸识别无法通过、页面提示认证信息不匹配、繁体字生僻字无法识别五、身份证已认证、重复实名认证六、更换实人认证信息(换人/换证件)七、...
阅读: 249

主流加密货币交易所合约交易手续费排名
目录国内最长使用加密货币交易所(官网地址+官方app下载)主流交易所合约交易基础费率对比理解合约手续费的核心:杠杆效应如何有效降低合约交易成本?1. 优先成为挂单者”(Maker)2. 提...
阅读: 227

欧e交易所网格交易教学:两种网格策略操作与优劣势介绍
目录OKX 网格策略是什么OKX 网格策略特色OKX 网格策略限制OKX 网格策略开单教学现货网格合约网格结语市场横盘震荡也能赚钱?透过交易机器人实现24 小时自动低买高卖,让你无需盯盘,就能每个月打...
阅读: 228

欧e交易所入金教学(web端):信用卡快捷买币、钱包转帐、C2C、大宗交易
目录入金欧易 OKX 前要做什么?有哪几种入金方式?欧易 OKX 入金方式一:快捷买币(信用卡买币)欧易 OKX 入金方式二:钱包转帐先获取欧易 OKX 钱包地址币安转帐欧易 OKX 可以用台币入金钱...
阅读: 216

什么是Aave 去中心化借贷协议?操作方式全解析
目录什么是Aave 及其运作原理?Aave 协议的核心功能Aave 为何成为2025 年DeFi 繁荣的中心?1. Aave 的400 亿美元TVL、66% 的借贷市场份额和快速增长2. 「Penda...
阅读: 246

什么是API?可用于将钱包整合至 DEX 和 NFT 平台的有哪些?
目录多链钱包整合API什么是多链钱包API?多链钱包API的主要功能对开发者的好处DEX聚合器API:流动性和路由什么是DEX聚合器API?DEX聚合器API的主要功能使用案例NFT市场API:交易和...
阅读: 239

稳定币专用链盘点:Plasma、Stable、Tempo等开辟支付新战场
目录为什么需要新的专用链?PlasmaStableConvergeCodexNobleArcTempo共同特征与未来展望当前的加密货币领域竞争格局正在发生变化。人们的焦点不再是L2 之间的战争,一个新...
阅读: 238

XRP ETF获批:它能在2025年重塑山寨币市场吗?
目录XRP ETF 批准的当前状态如何?为什么分析师预计 XRP ETF 将在 2025 年获得批准?SEC 法规变化如何影响山寨币 ETF?哪些机构举措支持批准?ETF 批准后 XRP 价格预测如何...
阅读: 255

tBTC是什么?一文详解tBTC(去中心化的封装比特币)铸造流程与费用
目录去中心化的封装比特币(tBTC)是什么?tBTC 小档案tBTC铸造流程与费用步骤教程步骤一:提供地址步骤二:转入比特币步骤三:启动铸造tBTC 安全吗tBTC 链上数据总结你的比特币正在帮你赚钱...
阅读: 239

加密货币世界中的 DeFi 是什么?受欢迎的DeFi 代币有哪些?一文详解
目录什么是去中心化金融(DeFi)?DeFi 如何运作?最受欢迎的 DeFi 平台什么是 DeFi 代币?去中心化金融 vs 传统金融DeFi 的风险去中心化金融(DeFi)允许用户在没有中介的情况下...
阅读: 201
猜你喜欢

ETH 挖矿常见问题解答:6% 年化收益与 IKA 奖励全解析
2025-10-29

什么是 Aptos ?2025年十大Aptos生态系加密项目与dApps介绍
2025-10-29

盘前市场是什么?如何运作?对代币启动影响分析
2025-10-29

OE Web3钱包忘记密码或助记词怎么办?能找回吗?还有救吗?
2025-10-29

如何一键降低TRON转账手续费?imKey钱包一键租赁能量转账USDT教程
2025-10-29

什么是Ledger Stax 钱包?功能有哪些?使用步骤教学
2025-10-29

OE DEX使用Web3钱包交易失败的原因是什么?DEX交易失败原因及处理方法
2025-10-29

OE钱包如何备份助记词或私钥 ?OE钱包备份助记词或私钥的操作方式
2025-10-29

okx钱包助记词和私钥是什么?为何重要?忘记后如何找回?
2025-10-29
