Linux

Cómo instalar Gitea en Ubuntu 20.04

Cómo instalar Gitea en Ubuntu 20.04

Gitea es un servidor git autohospedado rápido y fácil de usar escrito en Go. Incluye un editor de archivos de repositorio, seguimiento de problemas del proyecto, administración de usuarios, notificaciones, wiki integrado y mucho más.

Gitea es una aplicación ligera y se puede instalar en sistemas de baja potencia. Si está buscando una alternativa a Gitlab con una huella de memoria mucho más pequeña y no necesita todas las comodidades que ofrece Gitlab, entonces debería probar Gitea.

Este artículo explica cómo instalar y configurar Gitea en Ubuntu 20.04.

Requisitos previos #

Gitea admite SQLite, PostgreSQL y MySQL / MariaDB como backends de base de datos.

SQLite solo se recomienda para instalaciones pequeñas. Las instalaciones más grandes deben usar MySQL o PostgreSQL.

Usaremos SQLite como base de datos para Gitea. Si SQLite no está instalado en su sistema Ubuntu, instálelo ingresando los siguientes comandos como usuario sudo:

actualización de sudo aptsudo apt install sqlite3

Instalación de Gitea #

Gitea proporciona imágenes de Docker y se puede instalar desde código fuente, binario y como paquete. Instalaremos Gitea desde binario.

Instalar Git #

El primer paso es instalar Git en su servidor:

actualización de sudo aptsudo apt install git

Verifique la instalación mostrando la versión de Git:

git --version
git versión 2.25.1 

Crear un usuario de Git #

Cree un nuevo usuario del sistema que ejecutará la aplicación Gitea escribiendo:

sudo adduser \ --sistema \ --shell / bin / bash \ --gecos 'Git Version Control' \ --grupo \ --contraseña-inhabilitada \ --inicio / inicio / git \ git

El comando anterior crea un nuevo usuario y grupo llamado git, y establezca el directorio de inicio en / home / git. La salida se verá como a continuación:

Añadiendo el usuario del sistema 'git' (UID 112) ... Añadiendo un nuevo grupo 'git' (GID 118) ... Añadiendo un nuevo usuario 'git' (UID 112) con el grupo 'git' ... Creando el directorio de inicio '/ home / git' .. 

Descargar Gitea binary #

Dirígete a la página de descarga de Gitea y descarga el binario más reciente para tu arquitectura. En el momento de escribir este artículo, la última versión es la 1.10.2. Si hay una nueva versión disponible, cambie el VERSIÓN variable en el siguiente comando.

Usar wget para descargar el binario Gitea en el / tmp directorio:

VERSIÓN = 1.14.1sudo wget -O / tmp / gitea https: // dl.gitea.io / gitea / $ VERSION / gitea - $ VERSION -linux-amd64

Puedes ejecutar el gitea binario desde cualquier ubicación. Seguiremos la convención y moveremos el binario al / usr / local / bin directorio:

sudo mv / tmp / gitea / usr / local / bin

Haga que el binario sea ejecutable:

sudo chmod + x / usr / local / bin / gitea

Ejecute los siguientes comandos para crear los directorios y establecer los permisos y la propiedad necesarios:

sudo mkdir -p / var / lib / gitea / custom, data, logsudo chown -R git: git / var / lib / gitea /sudo chmod -R 750 / var / lib / gitea /sudo mkdir / etc / giteasudo chown root: git / etc / giteasudo chmod 770 / etc / gitea

La estructura de directorio anterior es recomendada por la documentación oficial de Gitea.

Los permisos del / etc / gitea el directorio está configurado en 770 para que el asistente de instalación pueda crear el archivo de configuración. Una vez que se complete la instalación, estableceremos permisos más restrictivos.

Crear un archivo de unidad Systemd #

Ejecutaremos Gitea como un servicio systemd.

Descargue el archivo de unidad systemd de muestra en el / etc / systemd / system directorio escribiendo:

sudo wget https: // crudo.githubusercontent.com / go-gitea / gitea / main / contrib / systemd / gitea.servicio -P / etc / systemd / system /

No necesita editar el archivo, está configurado para coincidir con nuestra configuración.

Habilite e inicie el servicio Gitea:

sudo systemctl daemon-reloadsudo systemctl enable --now gitea

Verifique que Gitea se esté ejecutando:

sudo systemctl status gitea
● gitea.servicio - Gitea (Git con una taza de té) Cargado: cargado (/ etc / systemd / system / gitea.Servicio; activado; preset del proveedor: habilitado) Activo: activo (en ejecución) desde el jueves 2021-05-06 05:32:04 UTC; Hace 7s PID principal: 77781 (gitea) Tareas: 6 (límite: 470) Memoria: 130.6M CGroup: / sistema.rebanada / gitea.servicio └─77781 / usr / local / bin / gitea web --config / etc / gitea / app.ini .. 

Configurar Gitea #

Ahora que Gitea está descargado y funcionando, podemos finalizar la instalación a través de la interfaz web.

Por defecto, Gitea escucha las conexiones en el puerto 3000 en todas las interfaces de red.

Si tiene un firewall UFW ejecutándose en su servidor, deberá abrir el puerto Gitea. Para permitir el tráfico en el puerto 3000, ingrese el siguiente comando:

sudo ufw permite 3000 / tcp

Abra su navegador, escriba http: // SU_DOMINIO_IR_IP: 3000, y aparecerá una pantalla similar a la siguiente:

Configuración de la base de datos:

Configuración general de la aplicación:

Puede cambiar la configuración en cualquier momento editando el archivo de configuración de Gitea.

Para comenzar la instalación, presione el botón "Instalar Gitea".

La instalación es instantánea. Una vez completado, será redirigido a la página de inicio de sesión.

Haga clic en "Necesita una cuenta? Regístrate ahora." Enlace. El primer usuario registrado se agrega automáticamente al grupo de administración.

Cambie los permisos del archivo de configuración de Gitea a solo lectura usando:

sudo chmod 750 / etc / giteasudo chmod 640 / etc / gitea / app.ini

Eso es. Gitea se ha instalado en su máquina Ubuntu.

Configuración de Nginx como proxy de terminación SSL #

Este paso es opcional, pero es muy recomendable. La terminación SSL significa que Nginx actuará como un punto intermedio entre la aplicación Gitea y los clientes web para que pueda acceder a Gitea a través de HTTPS.

Para usar Nginx como proxy inverso, debe tener un dominio o subdominio que apunte a la IP pública de su servidor. En este ejemplo, usaremos git.ejemplo.com.

Primero, instale Nginx y genere un certificado SSL Let's Encrypt gratuito utilizando las siguientes guías:

Una vez hecho esto, abra su editor de texto y edite el archivo de bloque del servidor de dominio:

sudo nano / etc / nginx / sites-enabled / git.ejemplo.com
/ etc / nginx / sites-enabled / git.ejemplo.com
servidor escuchar 80; nombre_servidor git.ejemplo.com; incluir fragmentos / letsencrypt.conf; devuelve 301 https: // git.ejemplo.com $ request_uri;  servidor listen 443 ssl http2; nombre_servidor git.ejemplo.com; proxy_read_timeout 720s; proxy_connect_timeout 720s; proxy_send_timeout 720s; client_max_body_size 50m; # Encabezados de proxy proxy_set_header X-Fordered-Host $ host; proxy_set_header X-Fordered-For $ proxy_add_x_fordered_for; proxy_set_header X-Fordered-Proto $ esquema; proxy_set_header X-Real-IP $ remote_addr; # Parámetros SSL ssl_certificate / etc / letsencrypt / live / git.ejemplo.com / fullchain.pem; ssl_certificate_key / etc / letsencrypt / live / git.ejemplo.com / privkey.pem; ssl_trusted_certificate / etc / letsencrypt / live / git.ejemplo.com / cadena.pem; incluir fragmentos / letsencrypt.conf; incluir fragmentos / ssl.conf; # archivos de registro access_log / var / log / nginx / git.ejemplo.com.acceso.Iniciar sesión; error_log / var / log / nginx / git.ejemplo.com.error.Iniciar sesión; # Manejar / solicitar ubicación / proxy_redirect off; proxy_pass http: // 127.0.0.1: 3000;  

No olvides reemplazar git.ejemplo.com con su dominio Gitea y establezca la ruta correcta a los archivos del certificado SSL. El tráfico HTTP se redirige a HTTPS

Reinicie el servicio Nginx para que los cambios surtan efecto:

sudo systemctl reiniciar nginx

A continuación, cambie el dominio de Gitea y la URL raíz. Para hacerlo, abra el archivo de configuración y edite las siguientes líneas:

sudo nano / etc / gitea / app.ini
/ etc / gitea / app.ini
[servidor] DOMINIO = git.ejemplo.com ROOT_URL = https: // git.ejemplo.com / 

Reinicie el servicio Gitea escribiendo:

sudo systemctl reiniciar gitea

En este punto, el proxy Gitea está configurado y puede acceder a él en: https: // git.ejemplo.com

Configuración de notificaciones por correo electrónico #

Si desea que su instancia de Gitea envíe correos electrónicos de notificación, puede instalar Postfix o usar algún servicio de correo transaccional como SendGrid, MailChimp, MailGun o SES.

Para habilitar las notificaciones por correo electrónico, abra el archivo de configuración y edite las siguientes líneas:

sudo nano / etc / gitea / app.ini
/ etc / gitea / app.ini
[correo] ENABLED = true HOST = SMTP_SERVER: SMTP_PORT FROM = SENDER_EMAIL USER = SMTP_USER PASSWD = YOUR_SMTP_PASSWORD 

Asegúrese de ingresar la información correcta del servidor SMTP.

Reinicie el servicio Gitea para que los cambios surtan efecto:

sudo systemctl reiniciar gitea

Para verificar la configuración y enviar un correo electrónico de prueba, inicie sesión en Gitea y vaya a: Administración del sitio> Configuración> Configuración de correo SMTP.

Gitea también te permite conectarte a Slack creando un webhook y enviando notificaciones a tus canales de Slack .

Actualización de Gitea #

Para actualizar a la última versión de Gitea, simplemente descargue y reemplace el binario.

  1. Detenga el servicio de Gitea:

    sudo systemctl detener gitea
  2. Descargue la última versión de Gitea y muévala a la / usr / local / bin directorio:

    VERSION =wget -O / tmp / gitea https: // dl.gitea.io / gitea / $ VERSION / gitea - $ VERSION -linux-amd64sudo mv / tmp / gitea / usr / local / bin
  3. Haga que el binario sea ejecutable:

    sudo chmod + x / usr / local / bin / gitea
  4. Reinicie el servicio Gitea:

    sudo systemctl reiniciar gitea

Eso es.

Conclusión #

Este tutorial lo guió a través de la instalación de Gitea en Ubuntu 20.04. Para obtener más información sobre cómo configurar su instancia de Gitea y crear su primer proyecto, visite la página de documentación de Gitea .

Si tiene preguntas, no dude en dejar un comentario a continuación.

El botón de clic izquierdo del mouse no funciona en Windows 10
Si está utilizando un mouse dedicado con su computadora portátil o computadora de escritorio, pero el el botón izquierdo del mouse no funciona en Wind...
El cursor salta o se mueve aleatoriamente mientras escribe en Windows 10
Si descubre que el cursor del mouse salta o se mueve por sí solo, automáticamente, de manera aleatoria mientras escribe en una computadora portátil o ...
Cómo invertir la dirección de desplazamiento del mouse y los paneles táctiles en Windows 10
Ratón y Panel táctils no solo facilitan la informática, sino que también hacen que sea más eficiente y requieran menos tiempo. No podemos imaginar una...