Gitea
Gitea 是一个社区管理的轻量级代码托管解决方案,使用 Go 编写。它是 Gogs 的一个分支。
安装
首先,启用社区仓库
然后安装 gitea 软件包
apk add gitea
设置数据库
安装 MariaDB 和 mariadb-client 软件包
apk add mariadb mariadb-client
设置 MariaDB 安装并使其安全
mysql_install_db --user=mysql --datadir=/var/lib/mysql service mariadb start rc-update add mariadb mysql_secure_installation
创建 gitea
数据库和一个有权访问它的用户
mysql -u root -p
之后的所有内容都应在 MariaDB 提示符(看起来像 MariaDB [(none)]>
)中键入mysql -u root -p CREATE DATABASE gitea DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; GRANT ALL ON gitea.* TO 'giteauser'@'localhost' IDENTIFIED BY 'giteapassword'; FLUSH PRIVILEGES; EXIT
如果需要,您可以现在卸载 mariadb-client
,因为它不再需要了
apk del mariadb-client
在 /etc/gitea/app.ini 中,将 [database]
部分的内容替换为以下内容
DB_TYPE = mysql HOST = /var/run/mysqld/mysqld.sock NAME = gitea ; The database name set with 'CREATE DATABASE' USER = giteauser ; The database user PASSWD = giteapassword ; The password for the database user
配置
可以使用 /etc/conf.d/gitea 配置 Gitea 服务
描述 | 配置变量 | 默认值 |
---|---|---|
运行 Gitea 的用户 | GITEA_USER | gitea |
Gitea 工作目录 | GITEA_WORK_DIR | /var/lib/gitea/ |
Gitea 配置文件 | GITEA_CONF | /etc/gitea/app.ini |
/etc/gitea/app.ini 中的一些其他设置
描述 | 配置变量 | 默认值 |
---|---|---|
Gitea 自定义目录 | 无法配置 |
/var/lib/gitea/custom/ |
Web 文件 | STATIC_ROOT_PATH | /usr/share/webapps/gitea/ |
数据文件 | APP_DATA_PATH | /var/lib/gitea/data/ |
Git 仓库存储目录 | ROOT | /var/lib/gitea/git/ |
日志目录 | ROOT_PATH | /var/log/gitea/ |
控制和启动 Gitea
您不应该在未设置某些环境变量和传递一些选项的情况下启动 Gitea,因为它不会知道将数据和日志存储在哪里,因此建议使用 init 脚本启动 gitea
service gitea start
要将 Gitea 添加到默认运行级别(以便它在每次启动时自动运行)
rc-update add gitea
要停止 Gitea 服务
service gitea stop
不使用 init 脚本运行 Gitea
如果(由于任何原因),您想在不使用 init 脚本的情况下启动 Gitea,您应该首先停止 Gitea 服务
service gitea stop
然后,使用以下命令(以 gitea
用户身份)运行 Gitea
GITEA_WORK_DIR=/var/lib/gitea gitea web --config /etc/gitea/app.ini
这将使用正确的配置文件并写入正确的目录。
安装后
![]() 请随时帮助我们完成它。 |
安装 Gitea 后,转到 http://localhost:3000 并开始安装后流程。
设置 SSH Git 访问
不要尝试耍聪明并使用 ssh-copy-id
,因为它不会设置正确的命令。
例如,如果这是公钥
ssh-ed25519 ******************************************************************** **********@gmail.com
.ssh/authorized_keys 中的行需要是
command="/usr/bin/gitea --config=/etc/gitea/app.ini serv key-2",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-ed25519 ******************************************************************** **********@gmail.com
为了做到这一点,生成 SSH 密钥,然后转到 Gitea 设置面板并单击 Add Key
按钮,然后粘贴您的公钥。
现在,一旦您将私钥添加到 SSH 代理,您就可以像通常使用 GitHub、GitLab 等一样使用 SSH 与 Gitea。