首页 >开发工具 >git >如何在 NUC 上搭建自己的 Gitlab 服务器

如何在 NUC 上搭建自己的 Gitlab 服务器

PHPz
PHPz原创
2023-03-31 09:19:40832浏览

在软件开发领域中,版本控制是非常重要的工具。它可以帮助团队在分布在不同地理位置的开发者之间协作,在不同的版本、分支上开发、调试和测试代码。Git是最流行的开源版本控制工具之一。而在个人开发者或者小型团队中,免费的 Gitlab 可以帮助他们实现自己的版本控制系统。而本文将介绍如何在 NUC 上搭建自己的 Gitlab 服务器。

NUC 简介

Intel NUC(Next Unit of Computing)是一种迷你电脑,它的体积非常小,但是配置非常强大。NUC 的高性能处理器、内存、硬盘和网络接口是这些设备的主要特征。

搭建环境

在开始搭建我们的 Gitlab 服务器之前,我们需要准备一个 NUC 运行环境。我们要求这个环境具有以下特点:

操作系统:Ubuntu 18.04.5 LTS

内存:至少 4GB

硬盘:至少 60GB

网络:有一个公网IP地址,并能访问22和80端口

配置步骤

第一步:更新软件包

在我们开始安装 Gitlab 之前,我们需要更新软件包:

sudo apt update
sudo apt upgrade

第二步:安装必备软件

在安装 Gitlab 前我们需要安装 Git、PostgreSQL 和 Nginx:

sudo apt install -y curl openssh-server ca-certificates
sudo apt install -y postfix
sudo apt install -y git-core
sudo apt install -y postgresql postgresql-contrib
sudo apt install -y nginx

安装了这些软件包之后,我们需要配置 PostgreSQL 数据库和 Nginx 服务器。

第三步:配置 PostgreSQL 数据库

在 Gitlab 中,我们使用 PostgreSQL 作为数据库引擎。我们需要创建一个运行 Gitlab 的用户,以及一个名为gitlabhq_production的数据库。

sudo su - postgres
createuser --interactive
createdb gitlabhq_production

创建数据库后,我们需要将其配置到 Gitlab。我们打开并编辑配置文件/etc/gitlab/gitlab.rb。在其中找到下面的语句,取消注释,并修改为以下内容:

## GitLab Postgres connection settings
gitlab_rails['db_adapter'] = 'postgresql'
gitlab_rails['db_encoding'] = 'unicode'
gitlab_rails['db_host'] = '127.0.0.1'
gitlab_rails['db_port'] = '5432'
gitlab_rails['db_username'] = 'git'
gitlab_rails['db_password'] = 'password'
gitlab_rails['db_database'] = 'gitlabhq_production'

第四步:安装 Gitlab

我们可以从 Gitlab 官方网站中下载 Gitlab 社区版:

curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
sudo apt-get install gitlab-ce

等待安装完毕后,运行以下命令启动 Gitlab 服务器:

sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart

第五步:配置 Nginx

Gitlab 使用 Nginx 作为 Web 服务器。这里我们需要修改 Nginx 的配置文件/etc/nginx/sites-available/gitlab

sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/gitlab
sudo nano /etc/nginx/sites-available/gitlab

## 修改 Gitlab 配置文件中的内容如下 ##
upstream gitlab-workhorse {
  server unix:/var/opt/gitlab/gitlab-workhorse/socket fail_timeout=0;
}

server {
    listen 80;
    server_name yourdomain.com;
    server_tokens off;

    client_max_body_size 250m;

    location / {
        proxy_pass http://gitlab-workhorse;
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto https;
        proxy_read_timeout 300;
    }

    error_page 404 /404.html;
        location = /40x.html {
    }

    error_page 500 502 503 504 /50x.html;
        location = /50x.html {
    }
}

当修改完成后,运行以下命令激活配置文件:

sudo ln -s /etc/nginx/sites-available/gitlab /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx

最后,我们打开浏览器,访问 Gitlab 在 NUC 上运行的 URL:http://yourdomain.com

结论

在本文中,我们学习了如何在 NUC 上搭建自己的 Gitlab 服务器。我们首先准备了一个运行 Ubuntu 18.04.5 LTS 的 NUC 环境,然后安装了必要的软件包,配置了 PostgreSQL 数据库和 Nginx 服务器,安装了 Gitlab 社区版,并将其配置为在 NUC 上运行。现在,我们可以让我们的团队在自己的服务器上共享代码了。

以上是如何在 NUC 上搭建自己的 Gitlab 服务器的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn