在 Ubuntu 上部署 Gitea 和 Drone

介绍

Gitea 是一个采用 Go 语言开发的自建 Git 服务,由原班人马 Fork 自著名项目 Gogs。功能强大,反应迅速,并且系统占用极低。官方的在线 Demo 运行在一块树莓派上,依然有良好的体验。

安装 Gitea

Gitea 的安装较为简单,通过最基础的二进制安装或者 Docker 安装都可以。由于 Drone 和 Gitea 在端口上可能会有冲突,不建议 Gitea 和 Drone 在同一台服务器上使用 docker-compose 来部署。所以我的 Gitea 使用二进制安装,Drone 使用 docker-compose 来部署。

安装 Gitea 参考 这里 即可。官方文档写得比较清除,但是需要注意的一点是,Gitea 的中文文档缺失了大量内容,导致我在安装的时候出现了很多问题。建议使用英文文档。这里对主要步骤做简单记录。

安装 MySQL

Gitea 运行需要使用数据库,支持 PostgreSQL (>=10),MySQL (>=5.7),SQLite 和 MSSQL (>=2008R2 SP3)。这里使用 MySQL 数据库。

1
2
sudo apt update
sudo apt install mysql-server

安装完成后,MySQL 服务会自动启动。可以使用一下指令验证 MySQL 服务是否正常工作。

1
sudo systemctl status mysql

通过二进制文件安装 Gitea

配置 Gitea

配置 Nginx

使用 certbot 添加 SSL 证书

安装 Drone