【Debian】4-?2 Gitea搭建

【Debian】4-?2 Gitea搭建

  • 一、準備工作
  • 二、創建 Gitea 用戶(推薦)
  • 三、下載并安裝 Gitea
  • 四、配置Gitea
    • 4-1 創建目錄結構
    • 4-2 創建配置目錄
  • 五、配置 Systemd 服務
  • 六、訪問 Gitea Web 界面
  • 七、小插曲

一、準備工作

更新系統軟件為最新

sudo apt update && sudo apt upgrade -y

安裝必要依賴:數據庫

Gitea 需要 Git 和數據庫支持(可以使用 SQLite、MySQL 或 PostgreSQL),但先前已經在寶塔面板安裝了mysql,這里就不用再安裝了

二、創建 Gitea 用戶(推薦)

為了安全起見,建議創建一個專門運行 Gitea 的用戶:

sudo adduser --system --shell /bin/bash --gecos 'Git Version Control' --group --disabled-password --home /home/gitea gitea

三、下載并安裝 Gitea

訪問以下目錄,下載最新版本 https://dl.gitea.io/gitea/
在這里插入圖片描述
我這里是1.24.3

wget -O gitea https://dl.gitea.io/gitea/1.24.3/gitea-1.24.3-linux-amd64

在這里插入圖片描述

賦予執行權限

chmod +x gitea

移動到合適目錄

sudo mv gitea /usr/local/bin/

四、配置Gitea

Gitea 需要幾個目錄來存儲數據和配置:

4-1 創建目錄結構

sudo mkdir -p /var/lib/gitea/{custom,data,log}
sudo chown -R gitea:gitea /var/lib/gitea/
sudo chmod -R 750 /var/lib/gitea/

4-2 創建配置目錄

sudo mkdir /etc/gitea
sudo chown root:gitea /etc/gitea
sudo chmod 770 /etc/gitea

五、配置 Systemd 服務

創建一個 systemd 服務文件,方便管理 Gitea 服務。

sudo vim /etc/systemd/system/gitea.service

寫入以下內容:

[Unit]
Description=Gitea (Git with a cup of tea)
After=network.target[Service]
RestartSec=2s
Type=simple
User=gitea
Group=gitea
WorkingDirectory=/var/lib/gitea/
ExecStart=/usr/local/bin/gitea web --config /etc/gitea/app.ini
Restart=always
Environment=USER=git HOME=/home/gitea GITEA_WORK_DIR=/var/lib/gitea[Install]
WantedBy=multi-user.target

啟動并啟用服務

sudo systemctl daemon-reload
sudo systemctl enable --now gitea

檢查狀態

sudo systemctl status gitea

六、訪問 Gitea Web 界面

打開瀏覽器,訪問:
http://服務器IP:3000

首次訪問會進入安裝向導:

數據庫類型:選擇 Mysql
數據庫路徑:默認即可 /var/lib/gitea/data/gitea.db
應用程序路徑:默認即可
端口:默認 3000
管理員賬號:設置用戶名、密碼、郵箱
其他配置按需填寫
完成后提交,Gitea 即可使用。

七、小插曲

問題1:找不到該數據庫用戶名或密碼有誤
在這里插入圖片描述
通過控制臺進去

mysql -u root -p

同時創建 gitea@localhost 和 gitea@%,并指定兼容的認證插件,注意替換你的密碼

DROP USER IF EXISTS 'gitea'@'localhost';
DROP USER IF EXISTS 'gitea'@'%';CREATE USER 'gitea'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password!!';
CREATE USER 'gitea'@'%' IDENTIFIED WITH mysql_native_password BY 'password!!';GRANT ALL PRIVILEGES ON gitea.* TO 'gitea'@'localhost';
GRANT ALL PRIVILEGES ON gitea.* TO 'gitea'@'%';FLUSH PRIVILEGES;

配置完成
在這里插入圖片描述

注冊賬號
在這里插入圖片描述
登錄賬號
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/93893.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/93893.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/93893.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【CDH × Docker】一次測試部署,N 次復用的環境鏡像方案

🚀 一次測試環境的探索:我如何將 CDH 集群打包成 Docker 鏡像,留給未來的自己 🧩 背景故事 最近在項目中,我們計劃上線一個基于 CDH(Cloudera Distribution Hadoop) 的大數據平臺。正式上生產環…

Java 日期時間格式化模式說明

Java 中日期時間格式化使用特定的模式字符串來定義輸出格式。以下是常見的格式化符號及其含義,適用于 SimpleDateFormat 和 DateTimeFormatter一、日期部分格式化符號符號含義示例y年 (Year)yyyy → 2023M月 (Month)MM → 09, MMM → Sep, MMMM → Septemberd月中的…

代碼隨想錄算法訓練營三十三天|動態規劃part06

LeetCode 322 零錢兌換 題目鏈接:322. 零錢兌換 - 力扣(LeetCode) 給你一個整數數組 coins ,表示不同面額的硬幣;以及一個整數 amount ,表示總金額。 計算并返回可以湊成總金額所需的 最少的硬幣個數 。…

【大模型LLM】大模型訓練加速 - 梯度累積(Gradient Accumulation)原理詳解

梯度累積(Gradient Accumulation)原理詳解 梯度累積是一種在深度學習訓練中常用的技術,特別適用于顯存有限但希望使用較大批量大小(batch size)的情況。通過梯度累積,可以在不增加單個批次大小的情況下模擬…

【數據分享】各省文旅融合耦合協調度及原始數據(2012-2022)

數據介紹引言 文旅融合是推動區域經濟高質量發展、促進共同富裕的重要路徑。黨的二十大報告明確提出“推進文化和旅游深度融合發展”的戰略目標,文旅產業通過資源整合與業態創新,可顯著縮小城鄉、區域差距,提升物質與精神雙重福祉&#xff08…

Linux編程: 10、線程池與初識網絡編程

今天我計劃通過一個小型項目,系統講解線程池與網絡編程的核心原理及實踐。項目將圍繞 “利用線程池實現高并發網絡通信” 這一核心需求展開,具體設計如下: 為保證線程安全,線程池采用單例模式設計,確保全局唯一實例避…

藏云閣 Logo 庫(開源項目SVG/PNG高清Logo)

在日常技術方案設計、架構圖繪制或PPT制作中,常常會遇到一些問題,比如: 找不到統一風格的開源項目組件圖標,PPT中的logo五花八門下載的圖標分辨率不足,放大后模糊失真不同來源的圖標顏色風格沖突,破壞整體…

從0開始學習R語言--Day64--決策樹回歸

對于沒有特征或者說需要尋找另類關系的數據集,我們通常會用聚合或KNN近鄰的方法來分類,但這樣的分類或許在結果上是好的,但是解釋性并不好,有時候我們甚至能看到好的結果反直覺;而決策樹回歸做出的結果,由于…

B+樹高效實現與優化技巧

B樹的定義 一顆M階B樹T,滿足以下條件 每個結點至多擁有M課子樹 根結點至少擁有兩顆子樹 除了根結點以外,其余每個分支結點至少擁有M/2課子樹 所有的葉結點都在同一層上 有k棵子樹的分支結點則存在k-1個關鍵字,關鍵字按照遞增順序進行排序 關鍵字數量滿足 ceil( M/2 ) - 1 &…

Android 基礎入門學習目錄(持續更新)

四大組件 Activity: Service: BroadcastReceiver: ContentProvider: UI 與交互開發 常見的UI布局和UI控件 樣式與主題 Fragment Intent 數據存儲 自定義View和自定義Group 自定義View 自定義ViewGroup 事件分發 Key…

Linux移動大量文件命令

背景 使用 mv 命令報“/bin/mv: 參數列表過長”,也是第一遇到,查了一下,最后用rsync命令解決了。還好每臺服務器,都必裝rsync了,記錄如下。 命令 nohup rsync -av --remove-source-files --progress /public/tmp/video…

SQL中的HAVING用法

HAVING 是 SQL 中專門對 “分組之后的聚合結果” 再做篩選的子句。 它一般跟在 GROUP BY 后面,不能單獨使用,作用類似于分組版的 WHERE。? 1. 語法位置 SELECT 列1, 聚合函數(列2) AS 別名 FROM 表 GROUP BY 列1 HAVING 聚合條件; -- 這里寫對聚合…

【Halcon 】Halcon 實戰:如何為 XLD 模板添加極性信息以提升匹配精度?

Halcon 實戰:如何為 XLD 模板添加極性信息以提升匹配精度? 在使用 Halcon 進行模板匹配時,我們通常有兩種方式創建模板: 基于圖像灰度(CreateScaledShapeModel)基于輪廓 XLD(CreateScaledShapeM…

grafana/lock-stack 日志 Pipeline 配置

前言 本文使用的是 grafana/loki-stack chart 抓取的 k8s 日志。其他 chart 配置都差不多。 日志問題 docker 容器運行時 pod 內原始日志 [cpu-4] Hello, 第 9788 次報時,時間:2025-08-01T06:35:420000 {"HOSTNAME":"cpu-4",&qu…

appium2.0+之PointerActions詳解

以下內容在 夜神模擬器 上進行。 一、應用場景 一些針對手勢的操作,比如滑動、長按、拖動等。可以將這些基本手勢組合成一個相對復雜的手勢。 二、使用步驟創建觸摸輸入設備(模擬手指操作) touch_input PointerInput(interaction.POINTER_TO…

Java HTTPS 請求失敗排查與證書導入全過程

文章目錄Java HTTPS 請求失敗排查與證書導入全過程問題背景問題初步分析排查過程查看目標地址證書導入證書驗證證書是否導入成功重啟應用進一步驗證:是否真的是證書問題?1. 瀏覽器訪問2. 抓包工具驗證(如 Charles、Wireshark)補充…

android APT技術

1,背景 對于注解的使用,想必大家都不陌生,它出現在我們的源碼中,以及大部分框架中,比如ButterKnife、Arouter、Retrofit,但它們是有區別的,其中前2個是編譯時注解,最后一個是運行時注…

MySQL 和 PostgreSQL綜合比對分析匯總

面對大數據項目或其它類型項目中,面對關系型數據庫選擇一直是很總要的一點,本文針對MySQL 和 PostgreSQL進行綜合比對分析匯總,內容僅供參考。MySQL 和 PostgreSQL 是兩款主流的開源關系型數據庫(RDBMS),但…

Linux---make和makefile

一、基本概念1.是什么make是一條命令,makefile是一個文件2.對應在vs中按一下f5就能運行代碼,在Linux中make就相當于f5,使用makefile來封裝從而實現我, 想要的功能3.使用①創建makefile文件②編輯makefile解釋:test.exe…

【DAB收音機】DAB收音機協議及其他資料匯總

目錄[ETSI DAB標準協議文檔](https://www.etsi.org/standards)Other DAB資料DAB收音機相關的專利DAB收音機相關的期刊及學位論文DAB開源項目代碼倉庫qt-dab工具welle.io工具dablin工具【eti廣播工具】?? 項目對比與選型建議Other 收音機資料Other資料ETSI DAB標準協議文檔 官…