首頁 >開發工具 >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