站長資訊網
最全最豐富的資訊網站

Ubuntu 18.04 上安裝搭建私有 Git 服務器 Gitea

Gitea是用Go編寫的自托管開源git服務器。 這是Gogs的分叉。 Gitea包括存儲庫文件編輯器,項目問題跟蹤,用戶管理,通知,內置Wiki等。

Gitea是輕量級的應用程序,可以安裝在低功率系統上。 如果您正在尋找內存占用量少得多的Gitlab替代產品,并且不需要Gitlab提供的所有功能,那么您絕對應該嘗試Gitea。

本教程說明了如何在Ubuntu 18.04上安裝和配置Gitea。 相同的說明適用于Ubuntu 16.04和任何其他基于Debian的發行版。

Ubuntu 18.04 上安裝搭建私有 Git 服務器 Gitea

必要條件

Gitea支持SQLite,PostgreSQL和MySQL/MariaDB作為數據庫后端。

我們將使用SQLite作為Gitea的數據庫。 如果您的Ubuntu系統上未安裝SQLite,則可以通過以sudo用戶身份輸入以下命令來安裝它:

[linuxidc@linux:~/www.linuxidc.com]$ sudo apt update

[linuxidc@linux:~/www.linuxidc.com]$ sudo apt install sqlite3

Ubuntu 18.04 上安裝搭建私有 Git 服務器 Gitea

安裝Gitea

Gitea提供了Docker映像,可以從源代碼,二進制文件或作為軟件包安裝。

我們將從二進制文件安裝Gitea。 完成以下步驟,在Ubuntu上安裝Gitea。

安裝Git

第一步是在您的服務器上安裝Git:

[linuxidc@linux:~/www.linuxidc.com]$ sudo apt install git

通過顯示Git版本來驗證安裝:

[linuxidc@linux:~/www.linuxidc.com]$ git –version

git version 2.17.1

Ubuntu 18.04 上安裝搭建私有 Git 服務器 Gitea

創建一個Git用戶

創建一個新的系統用戶,將通過鍵入以下內容來運行Gitea應用程序:

該命令將創建一個名為git的新用戶和組,并將主目錄設置為/home/git。 輸出如下所示:

[linuxidc@linux:~/www.linuxidc.com]$ sudo adduser –system –group –disabled-password –shell /bin/bash –home /home/git –gecos ‘Git Version Control’ git
正在添加系統用戶”git” (UID 122)…
正在添加新組”git” (GID 127)…
正在將新用戶”git” (UID 122)添加到組”git”…
創建主目錄”/home/git”…

Ubuntu 18.04 上安裝搭建私有 Git 服務器 Gitea

下載Gitea二進制文件

訪問Gitea下載頁面,并下載適用于您的體系結構的最新二進制文件。 在撰寫本文時,最新版本為1.10.2。 如果有可用的新版本,請在下面的命令中更改VERSION變量。

使用以下wget命令在/tmp目錄中下載Gitea二進制文件:

[linuxidc@linux:~/www.linuxidc.com]$ VERSION=1.10.2
[linuxidc@linux:~/www.linuxidc.com]$ sudo wget -O /tmp/gitea https://dl.gitea.io/gitea/${VERSION}/gitea-${VERSION}-linux-amd64

Ubuntu 18.04 上安裝搭建私有 Git 服務器 Gitea

gitea二進制文件可以在任何位置運行。 我們將遵循約定并將二進制文件移至/usr/local/bin目錄:

[linuxidc@linux:~/www.linuxidc.com]$ sudo mv /tmp/gitea /usr/local/bin

賦予二進制文件可執行權限:

[linuxidc@linux:~/www.linuxidc.com]$ sudo chmod +x /usr/local/bin/gitea

Ubuntu 18.04 上安裝搭建私有 Git 服務器 Gitea

運行以下命令以創建目錄并設置所需的權限和所有權:

[linuxidc@linux:~/www.linuxidc.com]$ sudo mkdir -p /var/lib/gitea/{custom,data,indexers,public,log}
[linuxidc@linux:~/www.linuxidc.com]$ sudo chown git: /var/lib/gitea/{data,indexers,log}
[linuxidc@linux:~/www.linuxidc.com]$ sudo chmod 750 /var/lib/gitea/{data,indexers,log}
[linuxidc@linux:~/www.linuxidc.com]$ sudo mkdir /etc/gitea
[linuxidc@linux:~/www.linuxidc.com]$ sudo chown root:git /etc/gitea
[linuxidc@linux:~/www.linuxidc.com]$ sudo chmod 770 /etc/gitea

Ubuntu 18.04 上安裝搭建私有 Git 服務器 Gitea

/etc/gitea目錄的權限設置為770,以便安裝向導可以創建配置文件。 安裝完成后,我們將設置更多限制性權限。

創建Systemd Unit位文件

Gitea提供了已配置為與我們的設置匹配的Systemd Unit文件。

通過鍵入以下命令將文件下載到/etc/systemd/system/目錄:

[linuxidc@linux:~/www.linuxidc.com]$ sudo wget https://raw.githubusercontent.com/go-gitea/gitea/master/contrib/systemd/gitea.service -P /etc/systemd/system/

Ubuntu 18.04 上安裝搭建私有 Git 服務器 Gitea

完成后,啟用并啟動Gitea服務:

[linuxidc@linux:~/www.linuxidc.com]$ sudo systemctl daemon-reload
[linuxidc@linux:~/www.linuxidc.com]$ sudo systemctl enable –now gitea
Created symlink /etc/systemd/system/multi-user.target.wants/gitea.service → /etc/systemd/system/gitea.service.

Ubuntu 18.04 上安裝搭建私有 Git 服務器 Gitea

配置Gitea

現在已經下載并運行了Gitea,是時候通過Web界面完成安裝了。

默認情況下,Gitea會偵聽所有網絡接口上端口3000上的連接。

如果您的服務器上運行著UFW防火墻,則需要打開Gitea端口:

要允許端口3000上的流量,請輸入以下命令:

[linuxidc@linux:~/www.linuxidc.com]$ sudo ufw allow 3000/tcp
[sudo] linuxidc 的密碼:
防火墻規則已更新
規則已更新(v6)

Ubuntu 18.04 上安裝搭建私有 Git 服務器 Gitea

打開瀏覽器,輸入http://git.linuxidc.com:3000/然后將顯示類似以下的屏幕:

Ubuntu 18.04 上安裝搭建私有 Git 服務器 Gitea

數據庫設置:

  • 數據庫類型:SQLite3
  • 路徑:使用絕對路徑/var/lib/gitea/data/gitea.db

應用程序常規設置:

  • 站點名稱:您可以在此輸入您公司的名稱。
  • 存儲庫根路徑:保留默認的/home/git/gitea-repositories。
  • Git LFS根路徑:保留默認的/var/lib/gitea/data/lfs。
  • 以用戶名運行:git
  • SSH服務器域:輸入您的域或服務器IP地址。
  • SSH端口:22,如果SSH正在偵聽其他端口,請更改它
  • Gitea HTTP偵聽端口:3000
  • Gitea基本URL:使用http和您的域或服務器IP地址。
  • 日志路徑:保留默認的/var/lib/gitea/log

您可以隨時通過編輯Gitea配置文件來更改設置。

完成后,點擊“安裝Gitea”按鈕。安裝是即時的。完成后,您將被重定向到登錄頁面。

點擊“立即注冊”鏈接。第一個注冊用戶將自動添加到Admin組。

Ubuntu 18.04 上安裝搭建私有 Git 服務器 Gitea

Ubuntu 18.04 上安裝搭建私有 Git 服務器 Gitea

Ubuntu 18.04 上安裝搭建私有 Git 服務器 Gitea

使用以下命令將Gitea配置文件的權限更改為只讀:

[linuxidc@linux:~/www.linuxidc.com]$ sudo chmod 750 /etc/gitea

[linuxidc@linux:~/www.linuxidc.com]$ sudo chmod 640 /etc/gitea/app.ini

就這樣。 Gitea已安裝在您的Ubuntu計算機上。

將Nginx配置為SSL/TLS代理(termination proxy)

此步驟是可選的,但強烈建議這樣做。要將Nginx用作反向代理,您需要具有一個指向服務器公共IP的域或子域。在本教程中,我們將使用git.linuxidc.com。

首先,安裝Nginx并使用以下指南生成免費的“加密SSL”證書:

http://www.hospitaldelafe.com/Linux/2018-05/152257.htm

http://www.hospitaldelafe.com/Linux/2020-02/162228.htm

完成后,打開文本編輯器并編輯域服務器塊文件:

sudo nano /etc/nginx/sites-enabled/git.example.com

server {      listen 80;      server_name git.linuxidc.com;        include snippets/letsencrypt.conf;      return 301 https://git.linuxidc.com$request_uri;  }    server {      listen 443 ssl http2;      server_name git.linuxidc.com;        proxy_read_timeout 720s;      proxy_connect_timeout 720s;      proxy_send_timeout 720s;        client_max_body_size 50m;        # Proxy headers      proxy_set_header X-Forwarded-Host $host;      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;      proxy_set_header X-Forwarded-Proto $scheme;      proxy_set_header X-Real-IP $remote_addr;        # SSL parameters      ssl_certificate /etc/letsencrypt/live/git.linuxidc.com/fullchain.pem;      ssl_certificate_key /etc/letsencrypt/live/git.linuxidc.com/privkey.pem;      ssl_trusted_certificate /etc/letsencrypt/live/git.linuxidc.com/chain.pem;      include snippets/letsencrypt.conf;      include snippets/ssl.conf;        # log files      access_log /var/log/nginx/git.linuxidc.com.access.log;      error_log /var/log/nginx/git.linuxidc.com.error.log;        # Handle / requests      location / {         proxy_redirect off;         proxy_pass http://127.0.0.1:3000;      }  }  

不要忘記用您的Gitea域替換git.linuxidc.com,并為SSL證書文件設置正確的路徑。 HTTP流量重定向到HTTPS

重新啟動Nginx服務以使更改生效:

$sudo systemctl restart nginx

接下來,更改Gitea域和根URL。 為此,請打開配置文件并編輯以下行:

$sudo nano /etc/gitea/app.ini

[server]
DOMAIN          = git.linuxidc.com
ROOT_URL        = https://git.linuxidc.com/

通過鍵入以下命令重新啟動Gitea服務:

sudo systemctl restart gitea

至此,已經配置了Gitea代理,您可以在以下位置訪問它:https://git.linuxidc.com

配置電子郵件通知

為了使Gitea能夠發送通知電子郵件,您可以安裝Postfix或使用某些事務性郵件服務,例如SendGrid,MailChimp,MailGun或SES。

要啟用電子郵件通知,請打開配置文件并編輯以下行:

$sudo nano /etc/gitea/app.ini

[mailer]
ENABLED = true
HOST    = SMTP_SERVER:SMTP_PORT
FROM    = SENDER_EMAIL
USER    = SMTP_USER
PASSWD  = YOUR_SMTP_PASSWORD

確保您輸入了正確的SMTP服務器信息。

重新啟動Gitea服務以使更改生效:

sudo systemctl restart gitea

要驗證設置并發送測試電子郵件,請登錄Gitea,然后轉到:站點管理>配置> SMTP郵件程序配置。

Gitea還允許您通過創建Web Webhook連接到Slack并將通知發送到您的Slack頻道。

升級Gitea

要升級到最新的Gitea版本,只需下載并替換二進制文件即可。

01、停止Gitea服務:

sudo systemctl stop gitea

02、下載最新的Gitea版本并將其移至/home/git目錄:

VERSION=<THE_LATEST_GITEA_VERSION>

wget -O /tmp/gitea https://dl.gitea.io/gitea/${VERSION}/gitea-${VERSION}-linux-amd64

sudo mv /tmp/gitea /usr/local/bin

03、賦予二進制文件可執行權限:

sudo chmod +x /usr/local/bin/gitea

04、啟動Gitea服務:

sudo systemctl restart gitea

就這樣。

總結

本教程將引導您完成在Ubuntu 18.04上安裝Gitea的過程。現在,您應該訪問Gitea文檔頁面,并學習如何配置Gitea實例并創建第一個項目。

如有疑問,請在下面發表評論。

贊(0)
分享到: 更多 (0)
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
依依成人精品视频在线观看| 亚洲精品第一国产综合亚AV| 99久久这里只有精品| 日韩精品无码免费专区午夜| 国内大量揄拍人妻精品視頻| 四虎永久在线精品波多野结衣| 久久99热只有频精品8| 久热中文字幕在线精品首页| 久久久久久久久久免免费精品 | 亚洲精品日韩一区二区小说| 亚洲最大天堂无码精品区| 99re热这里有精品首页视频| 国产自偷亚洲精品页65页| 亚洲国产精品丝袜在线观看| 国产精品毛多多水多| 免费精品国偷自产在线在线| 精品无码一区在线观看| 亚洲国产精品特色大片观看完整版| 狠狠色伊人久久精品综合网| 国产aⅴ精品一区二区三区久久| 欧美黑人欧美精品刺激| 91精品国产91久久久久久青草| 日韩毛片在线视频| 久久久国产精品网站| 久久精品国产亚洲AV无码偷窥| 亚洲精品无码久久久久YW| 亚洲A∨精品一区二区三区下载| 久久久这里有精品| 99精品国产第一福利网站| 久久国产精品一国产精品| 国产精品成人A区在线观看 | 日本精品视频一区二区| 99久久er这里只有精品18| 精品无码人妻一区二区三区不卡| 久久精品国产91久久麻豆自制| 日本午夜精品一区二区三区电影 | 亚洲国产精品日韩专区AV| 精品久久久久久中文| 久久亚洲精品无码av| 国内精品-bt天堂| 国产大片91精品免费观看不卡|