Gitea 是一种轻量级的自托管 Git 服务,允许团队和个人高效协作并管理其软件项目的版本控制。
在 Fedora 38 上安装 Gitea
第 1 步。在我们可以在 Fedora 38 上安装 Gitea 之前,重要的是要确保我们的系统是最新的软件包。这将确保我们可以访问最新功能和错误修复,并且我们可以毫无问题地安装 Gitea:
sudo dnf update
sudo dnf install git wget curl
第 2 步。在 Fedora 38 上安装 Gitea。
默认情况下,Gitea 在 Fedora 基础仓库中不可用。现在,让我们在 Fedora 38 系统上下载并设置 Gitea 二进制文件。
- 访问 Gitea 官方网站 https://gitea.io/ 并导航到下载页面。
- 找到 Linux x86-64 二进制版本,然后单击下载链接。
- 下载完成后,提取下载存档的内容。
第 3 步。配置系统服务。
通过执行以下命令创建系统用户和组以运行 Gitea 服务:
sudo adduser --system --shell /bin/bash --comment 'Git Version Control' --user-group --home-dir /home/git git
将提取的 Gitea 二进制文件移动到相应的目录并设置所需的权限:
sudo mv gitea /usr/local/bin/gitea sudo chown root:root /usr/local/bin/gitea sudo chmod 755 /usr/local/bin/gitea
接下来,创建一个服务单元文件来管理 Gitea 服务:systemd
nano /etc/systemd/system/gitea.service
将以下配置添加到文件中:
[Unit] Description=Gitea (Git with a cup of tea) After=syslog.target After=network.target After=mysql.service After=postgresql.service After=memcached.service After=redis.service [Service] RestartSec=2s Type=simple User=git Group=git WorkingDirectory=/home/git ExecStart=/usr/local/bin/gitea web Restart=always Environment=USER=git HOME=/home/git GITEA_WORK_DIR=/home/git/gitea [Install] WantedBy=multi-user.target
保存并关闭文件。
第 4 步。自定义 Gitea 配置。
现在创建一个目录来存储 Gitea 配置文件:
sudo mkdir /etc/gitea sudo chown git:git /etc/gitea
将示例配置文件复制到新创建的目录:
sudo cp /usr/local/bin/gitea/sample/gitea.ini /etc/gitea/ sudo chown git:git /etc/gitea/gitea.ini
之后,打开 Gitea 配置文件进行编辑:
nano /etc/gitea/gitea.ini
根据您的首选项自定义配置,例如域设置、数据库后端和电子邮件配置。进行必要的更改后保存文件。
第5步。设置数据库后端。
Gitea需要一个数据库后端来存储其数据。在本节中,我们将介绍将MariaDB设置为数据库后端的步骤。现在我们安装和配置 MariaDB:
sudo dnf install mariadb-server mariadb
安装完成后,启动 MariaDB 服务并通过运行以下命令使其在启动时自动启动:
sudo systemctl enable mariadb --now sudo systemctl start mariadb sudo systemctl status mariadb
To check the version of MariaDB installed, run the command below:
mariadb --version
默认情况下,MariaDB 未强化。您可以使用脚本保护 MariaDB。您应该仔细阅读并在每个步骤下方仔细阅读,这将设置root密码,删除匿名用户,禁止远程root登录,并删除测试数据库和对安全MariaDB的访问权限:mysql_secure_installation
mysql_secure_installation
像这样配置它:
- Set root password? [Y/n] y - Remove anonymous users? [Y/n] y - Disallow root login remotely? [Y/n] y - Remove test database and access to it? [Y/n] y - Reload privilege tables now? [Y/n] y
接下来,您需要为 Gitea 创建一个数据库和用户:
mysql -u root -p
登录后,使用以下命令创建数据库和用户:
MariaDB [(none)]> CREATE DATABASE gitea; MariaDB [(none)]> GRANT ALL PRIVILEGES ON gitea.* TO 'gitea_user'@'localhost' IDENTIFIED BY 'your-strong-password'; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> EXIT;
有关安装 MariaDB 的其他资源,请阅读以下帖子:
- 如何在 Fedora Linux √ 上安装 MariaDB
第 6 步。配置 Web 服务器和反向代理。
要通过 Web 浏览器访问 Gitea,我们需要配置 Web 服务器并设置反向代理。在本节中,我们将使用 Nginx 作为 Web 服务器。现在我们安装并配置 Nginx:
sudo dnf install nginx
安装完成后,启动 Nginx 服务,并通过运行以下命令使其在启动时自动启动:
sudo systemctl start nginx
sudo systemctl enable nginx
接下来,为 Gitea 创建一个 Nginx 服务器块配置文件:
nano /etc/nginx/conf.d/gitea.conf
将以下配置添加到文件中:
server { listen 80; server_name your-domain.com; location / { proxy_pass http://localhost:3000; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; } }
步骤 7.配置 SSL 证书。
为了保护与Gitea的通信,我们将使用Let's Encrypt和Certbot获取并配置SSL证书。现在我们安装 Certbot 和 Nginx 插件:
sudo dnf install certbot python3-certbot-nginx
使用 Certbot 获取 SSL 证书:
sudo certbot --nginx --agree-tos --redirect --staple-ocsp --email your_email@example.com -d your-domain.com
按照提示为您的域生成 SSL 证书。
安装和配置完成后,是时候启动 Gitea 服务并通过 Web 浏览器访问它了:
sudo systemctl enable gitea
sudo systemctl start gitea
第8步。配置防火墙。
Fedora 默认启用防火墙,它将阻止来自其他尝试访问我们的 Gitea 服务的计算机的其他连接。我们必须打开适当的端口,以便可以从其他机器访问 Gitea 资源:
sudo firewall-cmd --permanent --zone=public --add-service=http sudo firewall-cmd --permanent --zone=public --add-service=https sudo firewall-cmd --reload
您可以通过列出当前防火墙设置进行验证:
sudo firewall-cmd --permanent --list-all
第9步。访问 Gitea 网页界面。
成功安装后,打开您的网络浏览器并使用 URL 访问 Gitea Web UI。您将被重定向到以下页面:https://your-domain.com
第10步。故障排除和其他资源。
- 如果您在安装过程中遇到任何问题,请参阅 Gitea 的官方文档和 Fedora 支持资源进行故障排除。
- 通过查看各自的网站和发行说明,随时了解最新版本的 Gitea 和 Fedora。
- 加入Gitea社区论坛和讨论板,与其他用户联系并寻求帮助。
- 探索 Gitea 的高级配置和功能,例如与其他开发工具和自定义选项的集成。
感谢您使用本教程在您的 Fedora 38 系统上安装 Gitea。如需其他帮助或有用信息,我们建议您查看 Gitea 官方网站。