文章目录
Gitea 简介
Gitea 是一个开源社区驱动的轻量级代码托管解决方案,后端采用 Go 编写,采用 MIT 许可证。
功能特性
- 支持活动时间线
- 支持 SSH 以及 HTTP/HTTPS 协议
- 支持 SMTP、LDAP 和反向代理的用户认证
- 支持反向代理子路径
- 支持用户、组织和仓库管理系统
- 支持添加和删除仓库协作者
- 支持仓库和组织级别 Web 钩子(包括 Slack 集成)
- 支持仓库 Git 钩子和部署密钥
- 支持仓库工单(Issue)、合并请求(Pull Request)以及 Wiki
- 支持迁移和镜像仓库以及它的 Wiki
- 支持在线编辑仓库文件和 Wiki
- 支持自定义源的 Gravatar 和 Federated Avatar
- 支持邮件服务
- 支持后台管理面板
- 支持 MySQL、PostgreSQL、SQLite3、MSSQL 和 TiDB(MySQL) 数据库
- 支持多语言本地化(21 种语言)
建设性意见
- 部署在数据中心、拥有公网 IP 地址的家用网络中,或是使用内网穿透,以便随时随地访问
- 部署在 7 x 24 运行的 Linux 服务器、NAS 网络存储或其它小型化设备上
- 部署在创建有 RAID 阵列的设备上可以避免硬盘损坏引发的数据损毁
准备工作
Gitea 部署
-
创建用于持久化存储 GitLab 数据的目录(命名规则参考)
mkdir -p '自定义数据目录'/gitea
-
通过
Portainer
管理面板创建一个Gitea
和MariaDB
专用的网络。点击 Portainer 左侧
Networks
,点击右侧Add network
,在name
处输入gitea-net
,然后直接点击页面底部的Create the network
完成创建。 -
将之前安装的
MariaDB
加入刚才新建的gitea-net
网络中点击 Portainer 左侧
Stacks
,点击右侧列表中的mariadb-phpmyadmin
,切换到Editor
选项卡,加入红框内的内容,然后点击页面下方的Update the stack
完成修改 -
登录之前创建的
phpMyAdmin
管理页面,为Gitea
创建专用数据库和账户点击管理页面 – 账户 – 新增用户账户
用户名填写
gitea
,密码填写insecure
,勾选创建与用户同名的数据库并授予所有权限
,然后点击底部的执行。(账户和密码可自行修改) -
点击 portainer 控制面板左侧
Stacks
,在该页面中点击Add stack
-
为
Stack
命名,根据需要修改下文中提供的模板并粘贴到页面上,然后点击页面底部Deploy the stack
完成创建version: "3" services: server: image: gitea/gitea:latest # latest 安装最新的版本 container_name: gitea environment: - USER_UID=1000 - USER_GID=1000 - DB_TYPE=mysql - DB_HOST=mariadb:3306 - DB_NAME=gitea - DB_USER=gitea # 刚才 phpMyadmin 填写的账户 - DB_PASSWD=insecure # 刚才 phpMyadmin 填写的密码 - TZ=Asia/Shanghai restart: always # 设置重启策略 volumes: - "'自定义数据目录'/gitea:/data" # Gitea 数据目录 ports: - "3000:3000" # HTTP 网页访问端口,例如要改为通过 6001 端口访问,就修改成 6001:3000 - "2221:22" # SSH 端口 networks: gitea-net: networks: gitea-net: external: true
登录
创建成功后,你可以通过打开 Web 浏览器并转到以下位置登录到您的 Gitea 实例:
http://localhost:3000 # 运行安装向导后,首次注册的账户将成为默认的管理员
- 如果您不是在本机安装,请不要忘记将
localhost
替换为安装设备的实际 IP 地址 - 如果您修改了默认的 HTTP 访问端口,请不要忘记将
3000
替换为您自定义的端口