申明: 该软件镜像是由QuickOn打包。在发行中提及的各自商标由各自的公司或个人所有,使用它们并不意味着任何从属关系。
- 通过 渠成软件百宝箱 一键安装 Gitea
- Dockerfile 源码
- Gitea 源码
- Gitea 官网
Gitea 是一个自己托管的Git服务程序。他和GitHub, Bitbucket or Gitlab等比较类似。他是从 Gogs 发展而来,不过我们已经Fork并且命名为Gitea。对于我们Fork的原因可以看 这里。
Gitea官网:https://gitea.io/
Gitea的首要目标是创建一个极易安装,运行非常快速,安装和使用体验良好的自建 Git 服务。我们采用Go作为后端语言,这使我们只要生成一个可执行程序即可。并且他还支持跨平台,支持 Linux, macOS 和 Windows 以及各种架构,除了x86,amd64,还包括 ARM 和 PowerPC。
- 支持活动时间线
- 支持 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)
- 最低的系统硬件要求为一个廉价的树莓派
- 如果用于团队项目,建议使用 2 核 CPU 及 1GB 内存
Chrome, Firefox, Safari, Edge
由于版本比较多,这里只列出最新的5个版本,更详细的版本列表请参考:可用版本列表
- latest,1.23.1,1.23.1-20250126
- 1.22.2,1.22.2-20241008
- 1.21.11,1.21.11-20240419
- 1.20.4,1.20.4-20230914
- 1.19.4,1.19.4-20230706
- 1.18.5-20230313
- 1.17.4-20221223
推荐从 Docker Hub Registry 拉取我们构建好的官方Docker镜像。
docker pull easysoft/gitea:latest
如需使用指定的版本,可以拉取一个包含版本标签的镜像,在Docker Hub仓库中查看 可用版本列表
docker pull easysoft/gitea:[TAG]
如果你删除容器,所有的数据都将被删除,下次运行镜像时会重新初始化数据。为了避免数据丢失,你应该为容器提供一个挂在卷,这样可以将数据进行持久化存储。
为了数据持久化,你应该挂载持久化目录:
- /data 持久化数据
如果挂载的目录为空,首次启动会自动初始化相关文件
$ docker run -it \
-v $PWD/data:/data \
docker pull easysoft/gitea:latest
或者修改 docker-compose.yml 文件,添加持久化目录配置
services:
Gitea:
...
volumes:
- /path/to/persistence:/data
...
变量名 | 默认值 | 说明 |
---|---|---|
EASYSOFT_DEBUG | false | 是否打开调试信息,默认关闭 |
APP_DOMAIN | 0.0.0.0:8080 | Gitea域名,影响访问与仓库的地址 |
APP_PROTOCOL | https | Gitea域名协议 |
MYSQL_HOST | 127.0.0.1 | MySQL 主机地址 |
MYSQL_PORT | 3306 | MySQL 端口 |
MYSQL_DB | gitea | spug 数据库名称 |
MYSQL_USER | root | MySQL 用户名 |
MYSQL_PASSWORD | pass4QuickOn | MySQL 密码 |
DEFAULT_ADMIN_USER | gitea | 默认管理员名称 |
DEFAULT_ADMIN_PASSWORD | pass4Gitea | 默认管理员密码 |
GITEA_ADMIN_EMAIL | admin@demo.com | 管理员邮箱地址 |
ENABLE_SWAGGER | false | 是否启动Swagger API页面 |
ALLOWED_HOST_LIST | * | 信任的 Webhook 域名列表 |
MAIL_ENABLED | false | 是否启用邮箱功能 |
SMTP_HOST | mail.demo.com | 邮箱地址 |
SMTP_PORT | 465 | 邮箱端口 |
SMTP_USER | gitea@demo.com | 邮箱发送账号 |
SMTP_PASS | mail4Gitea | 邮箱发送账号密码 |
SSH_LISTEN_PORT | 22 | 默认监听22 |
START_SSH_SERVER | false | 默认不开启ssh |
DISABLE_SSH | false | 默认不禁用ssh |
# 启动服务
make run
# 查看服务状态
make ps
# 查看服务日志
docker-compose logs -f gitea
说明:
- 启动成功后,打开浏览器输入
http://<你的IP>:8080
访问管理后台 - 默认用户名:
gitea
,默认密码:pass4Gitea
- VERSION 文件中详细的定义了Makefile可以操作的版本。
- docker-compose.yml。
容器镜像已为版本升级做了特殊处理,当检测数据(数据库/持久化文件)版本与镜像内运行的程序版本不一致时,会进行数据库结构的检查,并自动进行数据库升级操作。
因此,升级版本只需要更换镜像版本号即可:
修改 docker-compose.yml 文件
...
gitea:
- image: easysoft/gitea:1.17.0-20220729
+ image: easysoft/gitea:1.17.1-20220822
container_name: gitea
...
更新服务
# 是用新版本镜像更新服务
docker-compose up -d
# 查看服务状态和镜像版本
docker-compose ps