為您提供行業(yè)資訊、活動(dòng)公告、產(chǎn)品發(fā)布,匯聚最前沿流行的云計算技術(shù)
centos8如何安裝Gitea自建Git服務(wù)器環(huán)境?Gitea是一個(gè)極易安裝,運行非??焖?,安裝和使用體驗良好的自建Git服務(wù)。采用Go作為后端語(yǔ)言,這使得只要生成一個(gè)可執行程序即可。
Gitea還支持跨平臺,支持Linux、macOS和Windows以及各種架構,除了x86,amd64,還包括ARM和 PowerPC。本文介紹如何在 centos 8上安裝和配置Gitea。
先決條件
Gitea 支持SQLite、PostgreSQL和MySQL /MariaDB作為數據庫后端。
我們將使用 SQLite。它是一個(gè)輕量級數據庫,在單個(gè)文件中存儲數據。如果 CentOS 計算機上未安裝 SQLite,您可以通過(guò)以 sudo 用戶(hù)方式運行以下命令來(lái)安裝它:
sudo dnf install sqlite
我們假設SELinux 已禁用或設置為允許模式。
安裝Gitea
Gitea 可以從源、二進(jìn)制和作為包安裝。它也可以部署為 Docker 映像。我們將使用 thr 二進(jìn)制安裝 Gitea。
安裝Git
第一步是在CentOS上安裝 Git:
sudo dnf install git
通過(guò)顯示 Git 版本來(lái)驗證安裝:
git –version
git version 2.18.4
創(chuàng )建Git 用戶(hù)
創(chuàng )建新的系統用戶(hù)以運行 Gitea 應用程序:
sudo useradd \ –system \ –shell /bin/bash \ –comment ‘Git Version Control’ \ –create-home \ –home /home/git \ git
該命令將創(chuàng )建一個(gè)名為 的新用戶(hù)和組,并將主目錄設置為 。git/home/git
下載Gitea二進(jìn)制文件
最新的Gitea二進(jìn)制文件可以從Gitea下載頁(yè)面下載。請確保下載適合體系結構的二進(jìn)制文件。
在編寫(xiě)本文時(shí),最新版本為 1.12.3。如果有新版本可用,請更改下面的命令中的變量。VERSION
使用wget下載目錄中的 Gitea 二進(jìn)制文件:/tmp
VERSION=1.12.3sudo wget -O /tmp/gitea https://dl.gitea.io/gitea/${VERSION}/gitea-${VERSION}-linux-amd64
可以從任何位置運行二進(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,indexers,public,log}sudo chown git: /var/lib/gitea/{data,indexers,log}sudo chmod 750 /var/lib/gitea/{data,indexers,log}sudo mkdir /etc/giteasudo chown root:git /etc/giteasudo chmod 770 /etc/gitea
上述目錄結構由官方 Gitea 文檔推薦。
目錄的權限設置為以便安裝向導可以創(chuàng )建配置文件。安裝完成后,我們將設置更嚴格的權限。/etc/gitea770
創(chuàng )建系統單元文件
Gitea 提供了一個(gè)系統單元文件,該文件配置為與我們的設置相匹配。
通過(guò)鍵入以下類(lèi)型將文件下載到目錄:/etc/systemd/system/
sudo wget https://raw.githubusercontent.com/go-gitea/gitea/master/contrib/systemd/gitea.service -P /etc/systemd/system/
完成后,啟用并啟動(dòng) Gitea 服務(wù):
sudo systemctl daemon-reloadsudo systemctl enable –now gitea
驗證服務(wù)是否成功啟動(dòng):
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 Sat 2020-01-04 21:27:23 UTC; 3s ago
Main PID: 14804 (gitea)
Tasks: 9 (limit: 1152)
CGroup: /system.slice/gitea.service
└─14804 /usr/local/bin/gitea web –config /etc/gitea/app.ini
…
配置 Gitea
現在 Gitea 已啟動(dòng)并運行,是時(shí)候通過(guò) Web 界面完成安裝了。
默認情況下,Gitea 偵聽(tīng)所有網(wǎng)絡(luò )接口上的端口上的連接。您需要配置防火墻才能訪(fǎng)問(wèn)Gitea Web 界面:3000
sudo firewall-cmd –permanent –zone=public –add-port=3000/tcpsudo firewall-cmd –reload
打開(kāi)瀏覽器,輸入 ,初始配置頁(yè)面將顯示:http://YOUR_DOMAIN_IR_IP:3000/install
Gitea Install Hu0fef48a1a4fc23c829fe9e7f27f3c37c 115259 768×0 Resize Q75 Lanczos
填寫(xiě)所需的字段,如下:
數據庫設置:
數據庫類(lèi)型:SQLite3
路徑:使用絕對路徑,/var/lib/gitea/data/gitea.db
應用程序常規設置:
網(wǎng)站標題 – 輸入組織名稱(chēng)。
存儲庫根路徑 – 保留默認值 。/home/git/gitea-repositories
Git LFS 根路徑 – 保留默認值 。/var/lib/gitea/data/lfs
以用戶(hù)名運行 – git
SSH 服務(wù)器域 – 輸入您的域或服務(wù)器 IP 地址。
SSH 端口 – 22,如果 SSH 正在偵聽(tīng)其他端口,請更改它
Gitea HTTP 偵聽(tīng)端口 – 3000
Gitea 基本 URL – 使用 http 和您的域或服務(wù)器 IP 地址。
日志路徑 – 保留默認值/var/lib/gitea/log
稍后,您可以通過(guò)編輯 Gitea 配置文件來(lái)更改設置。
完成后,點(diǎn)擊”安裝 Gitea”按鈕。安裝是即時(shí)的。完成后,您將被重定向到登錄頁(yè)面。
點(diǎn)擊”立即注冊”鏈接。第一個(gè)注冊用戶(hù)將自動(dòng)添加到管理組。
若要使安裝更安全,請使用以下方法將 Gitea 配置文件的權限更改為只讀:
sudo chmod 750 /etc/giteasudo chmod 640 /etc/gitea/app.ini
就是這樣。Gitea 已安裝在 CentOS 計算機上。
將Nginx配置為SSL終止代理
此步驟是可選的,但強烈建議這樣做。若要使用 Nginx 作為反向代理,需要有指向服務(wù)器公共 IP 的域或子域。在本教程中,我們將使用 。git.example.com
首先,安裝 Nginx 并使用以下指南生成免費的”讓我們加密 SSL 證書(shū)”:
完成后,打開(kāi)文本編輯器并編輯域服務(wù)器塊文件:
sudo nano /etc/nginx/conf.d/git.example.com.conf
/etc/nginx/conf.d/git.示例.com.conf
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ū)文件的正確路徑。HTTP 流量重定向到 HTTPS 。
完成后,重新啟動(dòng) Nginx 服務(wù)以使更改生效:
sudo systemctl restart nginx
接下來(lái),更改 Gitea 域和根 URL。為此,請打開(kāi)配置文件并編輯以下行:
sudo nano /etc/gitea/app.ini
/等/吉泰亞/應用程序.ini
[server]
DOMAIN = git.example.com
ROOT_URL = https://git.example.com/
通過(guò)鍵入:
sudo systemctl restart gitea
此時(shí),Gitea 代理已配置,您可以在:https://git.example.com
配置電子郵件通知
對于要發(fā)送的通知電子郵件,您可以安裝 Postfix 或使用事務(wù)性郵件服務(wù),如 SendGrid、MailChimp、MailGun 或 SES。
若要啟用電子郵件通知,請打開(kāi)配置文件并編輯以下行:
sudo nano /etc/gitea/app.ini
/等/吉泰亞/應用程序.ini
[mailer]
ENABLED = true
HOST = SMTP_SERVER:SMTP_PORT
FROM = SENDER_EMAIL
USER = SMTP_USER
PASSWD = YOUR_SMTP_PASSWORD
請確保使用正確的 SMTP 服務(wù)器信息。
每次編輯文件時(shí),都需要重新啟動(dòng) Gitea 服務(wù)才能使更改生效:app.ini
sudo systemctl restart gitea
要驗證設置并發(fā)送測試電子郵件,請登錄到 Gitea 并轉到:站點(diǎn)管理 > 配置 > SMTP 郵件配置。
Gitea 還允許您通過(guò)創(chuàng )建 Webhook連接到 Slack,并向 Slack 通道發(fā)送通知。
升級吉泰亞
升級到最新的 Gitea 版本是一項簡(jiǎn)單的任務(wù)。您只需要下載并替換二進(jìn)制文件。
停止 Gitea 服務(wù):
sudo systemctl stop gitea
下載最新的 Gitea 二進(jìn)制文件并移動(dòng)到目錄:/usr/local/bin
VERSION=wget -O /tmp/gitea https://dl.gitea.io/gitea/${VERSION}/gitea-${VERSION}-linux-amd64sudo mv /tmp/gitea /usr/local/bin
使二進(jìn)制可執行:
sudo chmod +x /usr/local/bin/gitea
重新啟動(dòng) Gitea 服務(wù):
sudo systemctl restart gitea
就是這樣。
更多資訊:更多資訊
本站發(fā)布的【centos8如何安裝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)站