久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

基于Ubuntu 20.04安裝Gitea自建Git服務(wù)器環(huán)境

共計(jì) 4375 個(gè)字符,預(yù)計(jì)需要花費(fèi) 11 分鐘才能閱讀完成。

ubuntu 20.04 如何安裝 Gitea 自建 Git 服務(wù)器環(huán)境?Gitea 是一個(gè)用 Go 編寫的快速且易于使用的自托管 Git 服務(wù)器應(yīng)用。Gitea 包括存儲(chǔ)庫(kù)文件編輯器、項(xiàng)目問(wèn)題跟蹤、用戶管理、通知、內(nèi)置 wiki 等等。Gitea 是一個(gè)輕量級(jí)的應(yīng)用程序,可以安裝在低功耗系統(tǒng)上。如果我們有在尋找具有更小的內(nèi)存占用的 Gitlab 替代品,并且您不需要 Gitlab 提供復(fù)雜的功能的,那我們可以使用比較簡(jiǎn)單的 Gitea。

在這篇文章中,我們搬瓦工中文網(wǎng)介紹了如何在 Ubuntu 20.04 上安裝和配置 Gitea。

第一、必備兼容環(huán)境

Gitea 安裝環(huán)境需要我們當(dāng)前服務(wù)器支持 SQLite、PostgreSQL 和 MySQL /MariaDB 作為數(shù)據(jù)庫(kù)后端。如果我們的數(shù)據(jù)比較小,可以用 SQLite 數(shù)據(jù)庫(kù),如果我們的數(shù)據(jù)較大建議使用 MySQL 或 PostgreSQL。

sudo apt update

sudo apt install sqlite3

第二、安裝 Gitea 服務(wù)

Gitea 提供 Docker 鏡像,可以從源代碼、二進(jìn)制文件和包安裝。我們將從二進(jìn)制安裝 Gitea。

1、安裝 Git:

sudo apt update

sudo apt install git

這里我們采用的是 Ubuntu 鏡像。

git –version

安裝完畢之后,我們用命令檢查版本。如果有反饋的數(shù)據(jù)版本說(shuō)明安裝完畢。

2、創(chuàng)建用戶

sudo adduser \

–system \

–shell /bin/bash \

–gecos ‘Git Version Control’ \

–group \

–disabled-password \

–home /home/git \

git

上面的命令創(chuàng)建了一個(gè)名為 git 的新用戶和組,并將主目錄設(shè)置為 /home/git。輸出將如下所示:

Adding system user `git’ (UID 112) …

Adding new group `git’ (GID 118) …

Adding new user `git’ (UID 112) with group `git’ …

Creating home directory `/home/git’ …

3、下載文件

前往 Gitea 下載頁(yè)面并下載適用于您的架構(gòu)的最新二進(jìn)制文件。在撰寫本文時(shí),最新版本為 1.10.2。如果有可用的新版本,請(qǐng)?jiān)谙旅娴拿钪懈?VERSION 變量。

使用 wget 下載 /tmp 目錄下的 Gitea 二進(jìn)制文件:

VERSION=1.14.1

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

我們可以從任何位置運(yùn)行 gitea 二進(jìn)制文件。我們將遵循約定并將二進(jìn)制文件移動(dòng)到 /usr/local/bin 目錄:

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

使二進(jìn)制可執(zhí)行文件:

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

運(yùn)行以下命令以創(chuàng)建目錄并設(shè)置所需的權(quán)限和所有權(quán):

sudo mkdir -p /var/lib/gitea/{custom,data,log}

sudo chown -R git:git /var/lib/gitea/

sudo chmod -R 750 /var/lib/gitea/

sudo mkdir /etc/gitea

sudo chown root:git /etc/gitea

sudo chmod 770 /etc/gitea

上面的目錄結(jié)構(gòu)是 Gitea 官方文檔推薦的。/etc/gitea 目錄的權(quán)限設(shè)置為 770,以便安裝向?qū)Э梢詣?chuàng)建配置文件。安裝完成后,我們將設(shè)置更嚴(yán)格的權(quán)限。

4、創(chuàng)建系統(tǒng)單元文件

我們將 Gitea 作為系統(tǒng)服務(wù)運(yùn)行。

通過(guò)鍵入以下命令將示例 systemd 單元文件下載到 /etc/systemd/system 目錄:

sudo wget https://raw.githubusercontent.com/go-gitea/gitea/main/contrib/systemd/gitea.service -P /etc/systemd/system/

然后我們需要啟動(dòng)。

sudo systemctl daemon-reload

sudo systemctl enable –now gitea

驗(yàn)證狀態(tài)。

sudo systemctl status gitea

看看返回值。

gitea.service – Gitea (Git with a cup of tea)

Loaded: loaded (/etc/systemd/system/gitea.service; enabled; vendor preset: enabled)

Active: active (running) since Thu 2021-05-06 05:32:04 UTC; 7s ago

Main PID: 77781 (gitea)

Tasks: 6 (limit: 470)

Memory: 130.6M

CGroup: /system.slice/gitea.service

└─77781 /usr/local/bin/gitea web –config /etc/gitea/app.ini

5、配置 Gitea

現(xiàn)在 Gitea 已下載并運(yùn)行,我們可以通過(guò) Web 界面完成安裝。默認(rèn)情況下,Gitea 在所有網(wǎng)絡(luò)接口上偵聽端口 3000 上的連接。如果我們的服務(wù)器上運(yùn)行著 UFW 防火墻,則需要打開 Gitea 端口。要允許端口 3000 上的流量,請(qǐng)輸入以下命令:

sudo ufw allow 3000/tcp

打開瀏覽器,輸入 http://YOUR_DOMAIN_IR_IP:3000,會(huì)出現(xiàn)類似如下畫面:

對(duì)應(yīng)我們需要填寫數(shù)據(jù)信息,才可以安裝,比較類似我們安裝網(wǎng)站 CMS 一樣。

如果不好安裝需要給文件授權(quán):

sudo chmod 750 /etc/gitea

sudo chmod 640 /etc/gitea/app.ini

第三、Nginx 配置為 SSL

對(duì)于是否安裝 SSL,我們是可選的,但是建議還是安裝。SSL 安裝后意味著 Nginx 將充當(dāng) Gitea 應(yīng)用程序和 Web 客戶端之間的中介點(diǎn),因此您可以通過(guò) HTTPS 訪問(wèn) Gitea。

首先,安裝 Nginx 并使用以下指南生成免費(fèi)的 Let’s Encrypt SSL 證書:

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

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

配置:

server {

listen 80;

server_name git.example.com;

include snippets/letsencrypt.conf;

return 301 https://git.example.com$request_uri;

}

server {

listen 443 ssl http2;

server_name git.example.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.example.com/fullchain.pem;

ssl_certificate_key /etc/letsencrypt/live/git.example.com/privkey.pem;

ssl_trusted_certificate /etc/letsencrypt/live/git.example.com/chain.pem;

include snippets/letsencrypt.conf;

include snippets/ssl.conf;

# log files

access_log /var/log/nginx/git.example.com.access.log;

error_log /var/log/nginx/git.example.com.error.log;

# Handle / requests

location / {

proxy_redirect off;

proxy_pass http://127.0.0.1:3000;

}

}

根據(jù)需要修改。不要忘記用我們的 Gitea 域替換 git.example.com 并設(shè)置 SSL 證書文件的正確路徑。

最后要重啟 Nginx 生效。

sudo systemctl restart nginx

實(shí)際上我們安裝 SSL,最好是用免費(fèi)或者付費(fèi)證書,然后我們配置 SSL 文件即可。

接下來(lái),更改 Gitea 域和根 url。我們需要打開配置文件并編輯以下行:

sudo nano /etc/gitea/app.ini

編輯:

[server]

DOMAIN = git.example.com

ROOT_URL = https://git.example.com/

保存后重啟生效

sudo systemctl restart gitea

第四、配置郵件通知

如果我們希望我們的 Gitea 實(shí)例發(fā)送通知電子郵件,我們可以安裝 Postfix 或使用一些事務(wù)性郵件服務(wù),例如 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

然后重啟生效

sudo systemctl restart gitea

第五、如何升級(jí) Gitea

如果有新版本,我們?nèi)绾紊?jí) Gitea。

1、先關(guān)閉服務(wù)

sudo systemctl stop gitea

2、下載最新文件到 /usr/local/bin 目錄

VERSION=

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

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

3、執(zhí)行文件

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

4、重啟生效

sudo systemctl restart gitea

這樣,我們就可以完成在服務(wù)器中部署 Gitea,如果我們是個(gè)人或者小團(tuán)隊(duì)使用是夠用的。

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-06-13發(fā)表,共計(jì)4375字。
轉(zhuǎn)載說(shuō)明:除特殊說(shuō)明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請(qǐng)注明出處。
評(píng)論(沒(méi)有評(píng)論)
主站蜘蛛池模板: 天等县| 肥东县| 德钦县| 河南省| 东台市| 九龙坡区| 修文县| 潼关县| 鲁山县| 三台县| 开封县| 青铜峡市| 云浮市| 辽源市| 嘉黎县| 奇台县| 永春县| 雷波县| 睢宁县| 乐昌市| 凤庆县| 历史| 望奎县| 芜湖市| 新昌县| 江山市| 固镇县| 丰镇市| 淳安县| 西丰县| 辽宁省| 石柱| 乌什县| 离岛区| 泸州市| 太仆寺旗| 侯马市| 柳州市| 台北市| 蓝山县| 稷山县|