站長資訊網(wǎng)
        最全最豐富的資訊網(wǎng)站

        Ubuntu 18.04 上安裝搭建私有 Git 服務(wù)器 Gitea

        Gitea是用Go編寫的自托管開源git服務(wù)器。 這是Gogs的分叉。 Gitea包括存儲(chǔ)庫文件編輯器,項(xiàng)目問題跟蹤,用戶管理,通知,內(nèi)置Wiki等。

        Gitea是輕量級(jí)的應(yīng)用程序,可以安裝在低功率系統(tǒng)上。 如果您正在尋找內(nèi)存占用量少得多的Gitlab替代產(chǎn)品,并且不需要Gitlab提供的所有功能,那么您絕對(duì)應(yīng)該嘗試Gitea。

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

        Ubuntu 18.04 上安裝搭建私有 Git 服務(wù)器 Gitea

        必要條件

        Gitea支持SQLite,PostgreSQL和MySQL/MariaDB作為數(shù)據(jù)庫后端。

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

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

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

        Ubuntu 18.04 上安裝搭建私有 Git 服務(wù)器 Gitea

        安裝Gitea

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

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

        安裝Git

        第一步是在您的服務(wù)器上安裝Git:

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

        通過顯示Git版本來驗(yàn)證安裝:

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

        git version 2.17.1

        Ubuntu 18.04 上安裝搭建私有 Git 服務(wù)器 Gitea

        創(chuàng)建一個(gè)Git用戶

        創(chuàng)建一個(gè)新的系統(tǒng)用戶,將通過鍵入以下內(nèi)容來運(yùn)行Gitea應(yīng)用程序:

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

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

        Ubuntu 18.04 上安裝搭建私有 Git 服務(wù)器 Gitea

        下載Gitea二進(jìn)制文件

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

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

        [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 服務(wù)器 Gitea

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

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

        賦予二進(jìn)制文件可執(zhí)行權(quán)限:

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

        Ubuntu 18.04 上安裝搭建私有 Git 服務(wù)器 Gitea

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

        [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 服務(wù)器 Gitea

        /etc/gitea目錄的權(quán)限設(shè)置為770,以便安裝向?qū)Э梢詣?chuàng)建配置文件。 安裝完成后,我們將設(shè)置更多限制性權(quán)限。

        創(chuàng)建Systemd Unit位文件

        Gitea提供了已配置為與我們的設(shè)置匹配的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 服務(wù)器 Gitea

        完成后,啟用并啟動(dòng)Gitea服務(wù):

        [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 服務(wù)器 Gitea

        配置Gitea

        現(xiàn)在已經(jīng)下載并運(yùn)行了Gitea,是時(shí)候通過Web界面完成安裝了。

        默認(rèn)情況下,Gitea會(huì)偵聽所有網(wǎng)絡(luò)接口上端口3000上的連接。

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

        要允許端口3000上的流量,請(qǐng)輸入以下命令:

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

        Ubuntu 18.04 上安裝搭建私有 Git 服務(wù)器 Gitea

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

        Ubuntu 18.04 上安裝搭建私有 Git 服務(wù)器 Gitea

        數(shù)據(jù)庫設(shè)置:

        • 數(shù)據(jù)庫類型:SQLite3
        • 路徑:使用絕對(duì)路徑/var/lib/gitea/data/gitea.db

        應(yīng)用程序常規(guī)設(shè)置:

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

        您可以隨時(shí)通過編輯Gitea配置文件來更改設(shè)置。

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

        點(diǎn)擊“立即注冊(cè)”鏈接。第一個(gè)注冊(cè)用戶將自動(dòng)添加到Admin組。

        Ubuntu 18.04 上安裝搭建私有 Git 服務(wù)器 Gitea

        Ubuntu 18.04 上安裝搭建私有 Git 服務(wù)器 Gitea

        Ubuntu 18.04 上安裝搭建私有 Git 服務(wù)器 Gitea

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

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

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

        就這樣。 Gitea已安裝在您的Ubuntu計(jì)算機(jī)上。

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

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

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

        http://m.0106606.com/Linux/2018-05/152257.htm

        http://m.0106606.com/Linux/2020-02/162228.htm

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

        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證書文件設(shè)置正確的路徑。 HTTP流量重定向到HTTPS

        重新啟動(dòng)Nginx服務(wù)以使更改生效:

        $sudo systemctl restart nginx

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

        $sudo nano /etc/gitea/app.ini

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

        通過鍵入以下命令重新啟動(dòng)Gitea服務(wù):

        sudo systemctl restart gitea

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

        配置電子郵件通知

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

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

        $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服務(wù)器信息。

        重新啟動(dòng)Gitea服務(wù)以使更改生效:

        sudo systemctl restart gitea

        要驗(yàn)證設(shè)置并發(fā)送測試電子郵件,請(qǐng)登錄Gitea,然后轉(zhuǎn)到:站點(diǎn)管理>配置> SMTP郵件程序配置。

        Gitea還允許您通過創(chuàng)建Web Webhook連接到Slack并將通知發(fā)送到您的Slack頻道。

        升級(jí)Gitea

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

        01、停止Gitea服務(wù):

        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、賦予二進(jìn)制文件可執(zhí)行權(quán)限:

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

        04、啟動(dòng)Gitea服務(wù):

        sudo systemctl restart gitea

        就這樣。

        總結(jié)

        本教程將引導(dǎo)您完成在Ubuntu 18.04上安裝Gitea的過程。現(xiàn)在,您應(yīng)該訪問Gitea文檔頁面,并學(xué)習(xí)如何配置Gitea實(shí)例并創(chuàng)建第一個(gè)項(xiàng)目。

        如有疑問,請(qǐng)?jiān)谙旅姘l(fā)表評(píng)論。

        贊(0)
        分享到: 更多 (0)
        網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)
        主站蜘蛛池模板: 亚洲国产精品无码中文字| 国产午夜无码精品免费看| 久久国产亚洲精品无码| 国产成人99久久亚洲综合精品| 亚洲AV永久无码精品网站在线观看 | 亚洲午夜精品久久久久久人妖| 亚洲国产精品无码久久青草| 国产成人精品久久亚洲高清不卡 | 国产AV午夜精品一区二区入口| 无码精品久久久天天影视| 久久久久99精品成人片| 6080亚洲精品午夜福利| 97久久综合精品久久久综合| 无码国内精品久久人妻| 亚洲精品老司机在线观看| 免费人成在线观看欧美精品| 成人一区二区三区精品| 99久久www免费人成精品 | 成人无码精品1区2区3区免费看| 四虎精品免费永久免费视频| 精品亚洲视频在线观看| 国产精品美女久久久免费| 国产精品v欧美精品v日本精| 国产精品成| 国产精品制服丝袜亚洲欧美| 国产精品va在线观看无码| 99久久国产综合精品网成人影院 | 国产精品国产三级国产普通话| 精品国精品国产自在久国产应用| 亚洲Av永久无码精品三区在线| 亚洲精品国精品久久99热一| 在线亚洲精品自拍| 亚洲精品线路一在线观看| 夜夜爽一区二区三区精品| 亚洲国产成人乱码精品女人久久久不卡| 另类国产精品一区二区| 久久精品免费网站网| 午夜一级日韩精品制服诱惑我们这边| 亚洲精品成人片在线观看| 亚洲AV蜜桃永久无码精品| 亚洲精品国产综合久久一线|