官網:https://docs.gitea.io/zh-cn/
關於Gitea
Gitea 是一個自己託管的Git服務程序。他和GitHub, Bitbucket or Gitlab等比較類似。他是從 Gogs 發展而來,不過我們已經Fork並且命名爲Gitea。對於我們Fork的原因可以看 這裏。
上面一段話摘自官網
簡單來說就是gitea
,就是一個git倉庫,對於git 私服搭建一般國內一般有兩種:
- gitea
- gitlab
但是前段時間我試了下gitlab,對於個人來說 ,實在是太臃腫了,資源耗費也特別龐大,這時候gitea
是
一個很好的選擇,因爲的硬件要求很低
系統要求
- 最低的系統硬件要求爲一個廉價的樹莓派
- 如果用於團隊項目,建議使用 2 核 CPU 及 1GB 內存
功能特性
- 支持活動時間線
- 支持 SSH 以及 HTTP/HTTPS 協議
- 支持 SMTP、LDAP 和反向代理的用戶認證
- 支持反向代理子路徑
- 支持用戶、組織和倉庫管理系統
- 支持添加和刪除倉庫協作者
- 支持倉庫和組織級別 Web 鉤子(包括 Slack 集成)
- 支持倉庫 Git 鉤子和部署密鑰
- 支持倉庫工單(Issue)、合併請求(Pull Request)以及 Wiki
- 支持遷移和鏡像倉庫以及它的 Wiki
- 支持在線編輯倉庫文件和 Wiki
- 支持自定義源的 Gravatar 和 Federated Avatar
- 支持郵件服務
- 支持後臺管理面板
- 支持 MySQL、PostgreSQL、SQLite3、MSSQL 和 TiDB(MySQL) 數據庫
- 支持多語言本地化(21 種語言)
- 支持軟件包註冊中心(Composer/Conan/Container/Generic/Helm/Maven/NPM/Nuget/PyPI/RubyGems)
安裝
這裏選擇docker,如果對docker操作不熟悉,可以看這裏
docker-compose需要安裝,參考這裏
官網地址:https://docs.gitea.io/zh-cn/install-with-docker/
這裏直接選擇mysql數據庫
gitea + mysql 安裝
創建docker-compose.yml
vi docker-compose.yml
寫入下面的內容
version: "3"
networks:
gitea:
external: false
services:
server:
image: gitea/gitea:latest
container_name: gitea
environment:
- USER_UID=1000
- USER_GID=1000
- DB_TYPE=mysql
- DB_HOST=db:3306
- DB_NAME=gitea
- DB_USER=gitea
- DB_PASSWD=gitea
restart: always
networks:
- gitea
volumes:
- ./gitea:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
ports:
- "3000:3000"
- "222:22"
depends_on:
- db
db:
image: mysql:8
restart: always
environment:
- MYSQL_ROOT_PASSWORD=gitea
- MYSQL_USER=gitea
- MYSQL_PASSWORD=gitea
- MYSQL_DATABASE=gitea
networks:
- gitea
volumes:
- ./mysql:/var/lib/mysql
啓動
後臺啓動,服務會自動根據docker-compose.yaml
,進行創建
docker-compose up -d
如圖啓動成功
# 查看是否正常啓動
docker-compose ps
# 查看啓動日誌
docker-compose logs
訪問測試
默認是3000端口,如我的主機ip是 192.168.176.100,那訪問就是
http://192.168.176.100:3000
進來就是初始配置了
配置安裝
注意:這裏的初始配置很重要,如果配置錯誤需要刪掉 gitea 和 mysql的存儲卷重新配置
修改一般設置中的站點名稱,SSH 服務域名,基礎URL,改爲自己的
設置管理員賬號
安裝完了,之後會默認跳轉到http://192.168.176.100:3000/
新建倉庫
可以選擇創建一個新的,也可以選擇從其他地址遷移,這裏新建一個
可以看到倉庫已經創建了
git clone 測試
複製上面的鏈接,執行clone命令
git clone http://192.168.176.100:3000/root/test.git
clone
成功
git push 測試
隨便創建一個文件,執行
git add .
git commit -m "測試 gitea push"
git push origin master
期間會讓你輸入用戶名和密碼,直接輸入root用戶的即可