前言


本来基于github的webhook来实现自动化部署的,但是github的webhook现在不能请求到服务器了,一直访问失败,所以打算服务器部署gitea来实现自动化部署。

关于gitea


Gitea 是一个轻量级的 DevOps 平台软件。从开发计划到产品成型的整个软件生命周期,他都能够高效而轻松的帮助团队和开发者。包括 Git 托管、代码审查、团队协作、软件包注册和 CI/CD。它与 GitHub、Bitbucket 和 GitLab 等比较类似。 Gitea 最初是从 Gogs 分支而来,几乎所有代码都已更改。

Gitea的首要目标是创建一个极易安装,运行非常快速,安装和使用体验良好 的自建 Git 服务。

采用Go作为后端语言,只需生成一个可执行程序即可。 支持 Linux, macOS 和 Windows等多平台, 支持主流的x86,amd64、 ARM 和 PowerPC等架构。

安装流程


  1. 镜像拉取

    docker pull gitea/gitea:latest1

  2. 数据持久化

把gitea配置等相关的数据储存到容器外,持久化保存

  1. 创建文件夹

    mkdir -p /var/lib/gitea

  2. docker启动

端口可以根据自己的实际情况调整

docker run -d --name=gitea -p 2222:22 -p 8300:3000 -v /var/lib/gitea:/data gitea/gitea:latest

启动成功进入宝塔的docker->容器下可以看到容器正常启动
容器正常运行

  1. 配置数据库

使用mysql作为数据库

  1. 创建数据库

进入宝塔的数据库菜单,创建mysql数据库,用户名为gitea

创建数据库和用户名

权限设置

数据库创建完成后点击权限按钮,可以看到默认数据库的访问权限是本地服务器,也就是只有localhost:3306才可以访问

访问权限选择本地服务器

然而这个数据库是要给gitea的docker容器访问的,所以要给设置ip访问,ip可以查看gitea的docker配置下的容器网络

设置容器网络

在Docker中,当你使用Docker Bridge网络时,默认情况下,Docker会创建一个名为docker0的虚拟网桥,并且会自动分配一个子网和网关(通常是172.17.0.1)。这个网关是容器内部网络与外部网络通信的入口点。所以只需要配置其ip地址172.17.0.4即可

设置数据库权限

安装配置
访问《http://域名:8300》进入到安装页面
数据库配置

  1. 列表项目

列表目录

  1. 一般配置

一般配置

完成后点击立即安装即可

  1. 注册用户

安装完成后点击右上角注册按钮,进入用户注册页面

注册用户

关闭注册
因为是自用的,注册完成后我们就可以关闭注册了。
打开var->lib->gitea->conf->app.ini
修改service配置禁用用户注册

关闭用户注册

注意:

除了数据库必须配置以外,还有几个选项需要注意一下,特别是配置了"反向代理"。

SSH 服务域名:这个是存储库显示以 SSH 方式克隆时显示的域名,比如这个域名如果配置为 git.xx.com,那么在存储库哪里的 SSH 方式克隆就会显示为gitea@git.xx.com:test/test.git,域名的 IP 务必指向你的 Gitea 服务器。

SSH 服务端口:这个端口务必设置为你服务器的 SSH 端口,也就是你平时 SSH 登录服务器使用的端口,如果你的服务器没有开启 SSH 服务,将它设置为 0 以禁用。
Gitea 基本 URL:这个选项跟上面的 [SSH 服务域名] 同理,存储库显示以 HTTP(S) 方式克隆的时候显示的域名。

下面的 [可选设置] 部分根据自己的需要设置,最后点击 【立即安装】 即可。
宝塔面板docker安装Gitea-搭建私有Git服务器

11111.png

5、设置域名访问
如果你需要用域名访问,我们需要在网站设置中新建一个"反向代理",具体如图:

宝塔面板docker安装Gitea-搭建私有Git服务器
22222.png

修改gitea的app.ini配置文件
33333.png

最后修改:2025 年 05 月 03 日
如果觉得我的文章对你有用,请随意赞赏