為您提供行業(yè)資訊、活動(dòng)公告、產(chǎn)品發(fā)布,匯聚最前沿流行的云計算技術(shù)
ubuntu 20.04如何安裝Gitea自建Git服務(wù)器環(huán)境?Gitea是一個(gè)用 Go 編寫(xiě)的快速且易于使用的自托管 Git 服務(wù)器應用。 Gitea包括存儲庫文件編輯器、項目問(wèn)題跟蹤、用戶(hù)管理、通知、內置 wiki 等等。Gitea 是一個(gè)輕量級的應用程序,可以安裝在低功耗系統上。 如果我們有在尋找具有更小的內存占用的 Gitlab 替代品,并且您不需要 Gitlab 提供復雜的功能的,那我們可以使用比較簡(jiǎn)單的 Gitea。
在這篇文章中,我們搬瓦工中文網(wǎng)介紹了如何在 Ubuntu 20.04 上安裝和配置 Gitea。
第一、必備兼容環(huán)境
Gitea 安裝環(huán)境需要我們當前服務(wù)器支持 SQLite、PostgreSQL 和 MySQL /MariaDB 作為數據庫后端。如果我們的數據比較小,可以用SQLite 數據庫,如果我們的數據較大建議使用 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
安裝完畢之后,我們用命令檢查版本。如果有反饋的數據版本說(shuō)明安裝完畢。
2、創(chuàng )建用戶(hù)
sudo adduser \
–system \
–shell /bin/bash \
–gecos ‘Git Version Control’ \
–group \
–disabled-password \
–home /home/git \
git
上面的命令創(chuàng )建了一個(gè)名為 git 的新用戶(hù)和組,并將主目錄設置為 /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è)面并下載適用于您的架構的最新二進(jìn)制文件。 在撰寫(xiě)本文時(shí),最新版本為 1.10.2。 如果有可用的新版本,請在下面的命令中更改 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
我們可以從任何位置運行 gitea 二進(jìn)制文件。 我們將遵循約定并將二進(jìn)制文件移動(dòng)到 /usr/local/bin 目錄:
sudo mv /tmp/gitea /usr/local/bin
使二進(jìn)制可執行文件:
sudo chmod +x /usr/local/bin/gitea
運行以下命令以創(chuàng )建目錄并設置所需的權限和所有權:
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
上面的目錄結構是 Gitea 官方文檔推薦的。/etc/gitea 目錄的權限設置為770,以便安裝向導可以創(chuàng )建配置文件。 安裝完成后,我們將設置更嚴格的權限。
4、創(chuàng )建系統單元文件
我們將 Gitea 作為系統服務(wù)運行。
通過(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
驗證狀態(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
現在 Gitea 已下載并運行,我們可以通過(guò) Web 界面完成安裝。默認情況下,Gitea 在所有網(wǎng)絡(luò )接口上偵聽(tīng)端口 3000 上的連接。如果我們的服務(wù)器上運行著(zhù) UFW 防火墻,則需要打開(kāi) Gitea 端口。 要允許端口 3000 上的流量,請輸入以下命令:
sudo ufw allow 3000/tcp
打開(kāi)瀏覽器,輸入http://YOUR_DOMAIN_IR_IP:3000,會(huì )出現類(lèi)似如下畫(huà)面:
對應我們需要填寫(xiě)數據信息,才可以安裝,比較類(lèi)似我們安裝網(wǎng)站CMS一樣。
如果不好安裝需要給文件授權:
sudo chmod 750 /etc/gitea
sudo chmod 640 /etc/gitea/app.ini
第三、Nginx 配置為 SSL
對于是否安裝SSL,我們是可選的,但是建議還是安裝。 SSL 安裝后意味著(zhù) Nginx 將充當 Gitea 應用程序和 Web 客戶(hù)端之間的中介點(diǎn),因此您可以通過(guò) HTTPS 訪(fǎng)問(wèn) Gitea。
首先,安裝 Nginx 并使用以下指南生成免費的 Let’s Encrypt SSL 證書(shū):
完成后,打開(kāi)文本編輯器并編輯域服務(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;
}
}
根據需要修改。不要忘記用我們的 Gitea 域替換 git.example.com 并設置 SSL 證書(shū)文件的正確路徑。
最后要重啟Nginx生效。
sudo systemctl restart nginx
實(shí)際上我們安裝SSL,最好是用免費或者付費證書(shū),然后我們配置SSL文件即可。
接下來(lái),更改 Gitea 域和根 url。 我們需要打開(kāi)配置文件并編輯以下行:
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。
要啟用電子郵件通知,打開(kāi)配置文件并編輯以下行:
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
第五、如何升級Gitea
如果有新版本,我們如何升級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、執行文件
sudo chmod +x /usr/local/bin/gitea
4、重啟生效
sudo systemctl restart gitea
這樣,我們就可以完成在服務(wù)器中部署Gitea ,如果我們是個(gè)人或者小團隊使用是夠用的。
更多資訊:更多資訊
本站發(fā)布的【基于Ubuntu 20.04安裝Gitea自建Git服務(wù)器環(huán)境】?jì)热荩▓D片、視頻和文字)以原創(chuàng )、轉載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng)
如果涉及侵權請盡快告知,我們將會(huì )在第一時(shí)間立刻刪除涉嫌侵權內容,本站原創(chuàng )內容未經(jīng)允許不得轉載,或轉載時(shí)需注明出處。
Copyright ? 2009-2024 56dr.com. All Rights Reserved. 特網(wǎng)科技 版權所有 珠海市特網(wǎng)科技有限公司 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 百度云 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2
建議您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流瀏覽器瀏覽本網(wǎng)站