如何在Ubuntu 20.04上安装Gitea

Gitea是一个用Go编写的简单,轻量级且自托管的Git平台。 它是Gogs的分叉,非常类似于GitLab。 与GitLab相比,Gita更加容易,轻巧且易于配置。 它可以安装在所有主要操作系统上,包括Windows,macOS,Linux和ARM。 使用Gitea,您可以跟踪时间,问题,存储库分支,文件锁定,合并等等。

在本教程中,我们将向您展示如何在Ubuntu 20.04 VPS上使用Nginx作为反向代理安装Gitea。

先决条件

  • Ubuntu 20.04 VPS(我们将使用SSD 2 VPS计划)
  • 访问root用户帐户(或访问具有root特权的管理员帐户)

步骤1:登录到服务器并更新服务器操作系统软件包

首先,以root用户身份通过​​SSH登录到Ubuntu 20.04服务器:

ssh [email protected]_Address -p Port_number

您将需要用服务器各自的IP地址和SSH端口号替换“ IP_Address”和“ Port_number”。 另外,如有必要,将“ root”替换为管理员帐户的用户名。

在开始之前,您必须确保服务器上安装的所有Ubuntu OS软件包都是最新的。 您可以通过运行以下命令来执行此操作:

apt-get update -y
apt-get upgrade -y

步骤2:安装必需的依赖项

在继续之前,您将需要在服务器上安装一些必要的软件包。 您可以使用以下命令安装所有组件:

apt-get install git unzip gnupg2 -y

安装这些软件包之后,您可以继续并安装MariaDB服务器软件包。

步骤3:安装和配置MariaDB

Gitea使用MariaDB作为数据库后端,因此必须在您的服务器上安装MariaDB。 您可以使用以下命令进行安装:

apt-get install mariadb-server -y

一旦安装了MariaDB,请使用以下命令连接到MariaDB shell:

mysql

连接后,使用以下命令启用Innodb表:

MariaDB [(none)]>SET GLOBAL innodb_file_per_table = ON;

接下来,创建数据库并通过以下命令将其用于Gitea:

MariaDB [(none)]>CREATE DATABASE gitea;
MariaDB [(none)]>CREATE USER 'gitea'@'localhost' IDENTIFIED BY 'securepassword';

接下来,授予gitea数据库所有特权,并将字符集设置为utf8mb4:

MariaDB [(none)]>GRANT ALL ON gitea.* TO 'gitea'@'localhost' IDENTIFIED BY 'securepassword' WITH GRANT OPTION;
MariaDB [(none)]>ALTER DATABASE gitea CHARACTER SET = utf8mb4 COLLATE utf8mb4_unicode_ci;

接下来,使用以下命令清除特权以从MariaDB退出:

MariaDB [(none)]>FLUSH PRIVILEGES;
MariaDB [(none)]>EXIT;

接下来,编辑MariaDB默认配置文件并进行一些设置:

nano /etc/mysql/mariadb.conf.d/50-server.cnf

在内部添加以下行 [mysqld] 部分:

innodb_file_format = Barracuda
innodb_large_prefix = 1
innodb_default_row_format = dynamic

保存文件,然后重新启动MariaDB服务以应用更改:

systemctl restart mariadb

步骤4:安装Gitea

在下载和安装Gitea之前,您需要创建一个单独的用户来运行Gitea。 您可以使用以下命令创建新用户:

adduser --system --group --disabled-password --shell /bin/bash --home /home/git --gecos 'Git Version Control' git

创建新用户后,请使用以下命令下载最新版本的Gitea:

wget https://dl.gitea.io/gitea/1.13.1/gitea-1.13.1-linux-amd64

下载后,使用以下命令将下载的二进制文件复制到系统路径:

cp gitea-1.13.1-linux-amd64 /usr/bin/gitea

接下来,将执行权限设置为gitea二进制文件:

chmod 755 /usr/bin/gitea

接下来,您将需要创建一个目录结构来存储Gitea数据和日志。 您可以使用以下命令创建它们:

mkdir -p /etc/gitea /var/lib/gitea/{custom,data,indexers,public,log}

接下来,对所有目录设置适当的所有权和权限:

chown git:git /etc/gitea /var/lib/gitea/{custom,data,indexers,public,log}
chmod 750 /var/lib/gitea/{data,indexers,log}
chmod 770 /etc/gitea

步骤5:为Gitea创建系统单元文件

接下来,创建一个systemd服务文件以使用systemd管理Gitea服务。

nano /etc/systemd/system/gitea.service

添加以下行:

[Unit]
Description=Gitea
After=syslog.target
After=network.target
After=mysql.service

[Service]
RestartSec=2s
Type=simple
User=git
Group=git
WorkingDirectory=/var/lib/gitea/
ExecStart=/usr/bin/gitea web -c /etc/gitea/app.ini
Restart=always
Environment=USER=git HOME=/home/git GITEA_WORK_DIR=/var/lib/gitea

[Install]
WantedBy=multi-user.target

保存并关闭文件,然后使用以下命令重新加载systemd守护程序:

systemctl daemon-reload

接下来,启动Gitea服务,并使其在系统重新引导时启动:

systemctl start gitea
systemctl enable gitea

您还可以使用以下命令验证Gitea的状态:

systemctl status gitea

步骤6:将Nginx配置为Gitea的反向代理

首先,使用以下命令安装Nginx软件包:

apt-get install nginx -y

安装后,您需要将Nginx配置为反向代理才能访问Gitea。

首先,使用以下命令创建一个新的Nginx虚拟主机配置文件:

nano /etc/nginx/conf.d/gitea.conf

添加以下行:

upstream gitea {
    server 127.0.0.1:3000;
}

server {
    listen 80;
    server_name gitea.example.com;
    root /var/lib/gitea/public;
    access_log off;
    error_log off;

    location / {
      try_files maintain.html $uri $uri/index.html @node;
    }

    location @node {
      client_max_body_size 0;
      proxy_pass http://localhost:3000;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header Host $http_host;
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_max_temp_file_size 0;
      proxy_redirect off;
      proxy_read_timeout 120;
    }
}

保存并关闭文件,然后重新启动Nginx服务以应用更改:

systemctl restart nginx

步骤7:访问Gitea Web UI

现在,打开您的Web浏览器并使用URL访问Gitea。 http://gitea.example.com/install。 您将被重定向到Gitea设置页面:

在ubuntu 20.04上安装gitea在ubuntu上安装gitea教程在ubuntu 20.04上安装gitea

提供您的Gitea数据库信息,端口,URL,管理员用户名,密码,然后单击 安装Gitea 按钮。 安装完成后,您将被重定向到Gitea仪表板:

在Ubuntu上安装gite

恭喜你! 您已在Ubuntu 20.04 VPS上成功安装了Gitea。

当然,如果您使用我们的Git VPS托管服务之一,则无需执行任何操作,在这种情况下,您可以简单地要求我们的Linux专业管理员为您进行设置。 它们全天候24×7可用,将立即处理您的请求。

PS。 如果您喜欢此帖子,请使用左侧的按钮在社交网络上与您的朋友分享,或者在下面留下您的答复。 谢谢。

Sidebar