Para desplegar Gitea en Ubuntu 20.04, comience actualizando los paquetes del sistema e instalando las dependencias requeridas. SQLite se usará como motor de base de datos y Git es esencial para el control de versiones.
sudo apt-get update
sudo apt-get install -y sqlite3 git
Cree un usuario dedicado para ejecutar el servicio de Gitea. Establezca su directorio principal en /opt/gitea y asigne un intérprete de comandos apropiado.
sudo useradd --system --create-home --home-dir /opt/gitea --shell /usr/bin/bash --comment "Cuenta de servicio para Gitea" gitea
Descargue el binario de Gitea. Verifique la versión deseada en la página oficial y ajústela si es necesario. Mueva el ejecutable a un directorio en el PATH del sistema y otorgue permisos de ejecución.
GITEA_VER=1.19.0
sudo wget -q -O /tmp/gitea https://dl.gitea.io/gitea/${GITEA_VER}/gitea-${GITEA_VER}-linux-amd64
sudo install -o root -g root -m 755 /tmp/gitea /usr/local/bin/gitea
Configure los directorios necesarios para Gitea bajo /opt/gitea y establezca los permisos adecuados. Asegúrese de que el usuario gitea tenga acceso exclusivo a los datos y registros.
sudo mkdir -p /opt/gitea/{custom,data,log}
sudo chown -R gitea:gitea /opt/gitea
sudo chmod -R 750 /opt/gitea
Defina un directorio de configuración en /etc/gitea con permisos restringidos para facilitar la configuración inicial.
sudo mkdir -p /etc/gitea
sudo chown root:gitea /etc/gitea
sudo chmod 770 /etc/gitea
Cree un archivo de servicio Systemd para gestionar Gitea. Esto permite iniciar, detener y habilitar el servicio de forma persistente.
sudo tee /etc/systemd/system/gitea.service > /dev/null <<EOF
[Unit]
Description=Gitea Service
After=network.target
[Service]
Type=simple
User=gitea
Group=gitea
WorkingDirectory=/opt/gitea
ExecStart=/usr/local/bin/gitea web --config /etc/gitea/app.ini
Restart=always
Environment=USER=gitea HOME=/opt/gitea GITEA_WORK_DIR=/opt/gitea
[Install]
WantedBy=multi-user.target
EOF
Recargue la configuración de Systemd, inicie el servicio y actívelo para que se ejecute al arrancar.
sudo systemctl daemon-reload
sudo systemctl enable gitea
sudo systemctl start gitea
Verifique el estado del servicio para confirmar que está en ejecución.
sudo systemctl status gitea
Si el firewall UFW está activo, abra el puerto 3000 para permitir el acceso web.
sudo ufw allow 3000/tcp
Acceda a la interfaz web mediante un navegador en http://ip_del_servidor:3000 para completar la configuración inicial de Gitea, donde se definirán los parámetros de la base de datos y otros ajustes.