Cómo instalar Gitea con PostgreSQL en Debian 11

Instalar PostgreSQL

Gitea es una solución gratuita, de código abierto y autohospedada para servidores Git. Gitea ha escrito en el lenguaje de programación Go, una aplicación liviana, disponible como paquete binario que se puede instalar en la mayoría de las plataformas, incluidas Windows, Linux y macOS. Es una de las alternativas robustas, escalables, rápidas, fáciles de usar y a GitLab.

Gitea ofrece muchas funciones, incluido un editor de archivos de repositorio, seguimiento de errores y tiempo, bifurcación de repositorios, bloqueo de archivos, wiki incorporado, fusión, compatibilidad con múltiples bases de datos, proceso de actualización fácil, registro de contenedores incorporado y mucho más.

En este tutorial, le mostraré cómo instalar Gitea desde binario con PostgreSQL en Debian 11.

requisitos previos

  • Un servidor que ejecuta Debian 11.
  • Una contraseña de root está configurada en el servidor.

Paso 1: actualizar el sistema operativo

Antes de iniciar la instalación de Gitea, ejecute el siguiente comando para actualizar su sistema con la última versión.

sudo apt-get update -y

sudo apt-get upgrade -y


Paso 2: instalar y configurar PostgreSQL

Gitea admite todas las principales bases de datos como MySQL, MariaDB, SQLite, MySQL y PostgreSQL, pero en esta guía, se utiliza PostgreSQL como base de datos de Gitea.

Primero, cree el Repositorio de PostgreSQL usando el siguiente comando:

sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'

A continuación, deberá importar la clave de firma del repositorio:

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

Ahora, instale PostgreSQL usando los siguientes comandos:

sudo apt-get update

sudo apt-get -y install postgresql


A continuación, inicie el servicio PostgreSQL, actívelo al iniciar el sistema y verifique el estado del servicio PostgreSQL con el siguiente comando:

sudo systemctl start postgresql

sudo systemctl enable postgresql

sudo systemctl status postgresql


Instalar PostgreSQL

A continuación, debe cambiar a ‘SCRAM-SHA-256’ esquema del esquema de cifrado md5 para una mejor seguridad. Si desea conectarse a PostgreSQL de forma remota, debe permitir su dirección IP en el archivo de configuración de PostgreSQL. Abra el archivo de configuración para realizar cambios con el siguiente comando:

sudo vim /etc/postgresql/14/main/postgresql.conf

Si tiene instalada otra versión de PostgreSQL, cambie la ruta de comando anterior de acuerdo con ella.

A continuación, cambie las siguientes variables según sus requisitos:

listen_addresses = 'localhost, 134.122.38.45'
password_encryption = scram-sha-256

Guarde y salga del archivo y reinicie el servicio PostgreSQL para aplicar los cambios.

sudo systemctl restart postgresql

A continuación, inicie sesión en el shell de PostgreSQL con el siguiente comando:

sudo -u postgres psql

Luego cree un rol de usuario y una base de datos para Gitea ejecutando el siguiente comando:

postgres=# CREATE ROLE gitea WITH LOGIN PASSWORD '[email protected]';

postgres=# CREATE DATABASE giteadb;

postgres=# GRANT ALL PRIVILEGES ON DATABASE giteadb TO gitea;

postgres=# exit


Aquí, debe configurar el nombre de usuario, el nombre de la base de datos y su contraseña para Gitea.

Crear rol en postgres

En este punto, su configuración de PostgreSQL y listo para Gitea, verifique la configuración de autenticación en el archivo /etc/postgresql/14/main/pg_hba.conf.

PostgreSQL acepta todas las conexiones locales por defecto.

host    all             all             127.0.0.1/32            scram-sha-256

Si desea utilizar giteadb de forma remota, agregue la siguiente línea con su dirección IP en /etc/postgresql/14/main/pg_hba.conf

host    giteadb        gitea            134.122.38.0/32           scram-sha-256

Configurar anfitrión

Paso 3: instalar y configurar Git

Luego, instala git usando el siguiente comando:

sudo apt install git

Verifique la instalación de git comprobando la versión de Git:

git --version

Salida:-Publicidad

git version 2.30.2

A continuación, debe configurar su nombre y dirección de correo electrónico para Git.

git config --global user.name "Your Name"

git config –global user.email «[email protected]”


Puede verificar su configuración de Git usando el siguiente comando.

git config --list

Producción:-

user.name=Your Name
[email protected]

Paso 4: crea un usuario git para Gitea

Ahora, deberás crear un usuario de Gitea. Puedes hacer esto con el siguiente comando:

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

Esto creará un nuevo usuario git.

Paso 5: instalar y configurar Gitea

Ir a la Gitea Página de descarga y descarga la última versión disponible del binario Gitea. Al momento de escribir este tutorial, la última versión de Gitea es la 1.15.7. Puede cambiar la variable VERSIÓN en el siguiente comando para instalar cualquier otra versión.

cd /tmp
GITEAVERSION=1.15.7
wget -O gitea https://dl.gitea.io/gitea/${GITEAVERSION}/gitea-${GITEAVERSION}-linux-amd64

A continuación, mueva el binario de Gitea a la ruta del sistema con el siguiente comando:

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

A continuación, configure el permiso ejecutable para el archivo binario de Gitea ejecutando el siguiente comando en la terminal:

chmod +x /usr/local/bin/gitea

A continuación, deberá crear una estructura de directorios para Gitea, para hacerlo, ejecute los siguientes comandos:

sudo mkdir -p /etc/gitea

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


A continuación, otorgue los permisos necesarios para que Gitea funcione correctamente con los siguientes comandos:

sudo chown -R git:git /var/lib/gitea/

sudo chown root:git /etc/gitea

sudo chmod -R 750 /var/lib/gitea/

sudo chmod 770 /etc/gitea


A continuación, cree un archivo de servicio systemd para Gitea con el siguiente comando:

vim /etc/systemd/system/gitea.service

Pegue el siguiente código en él.

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

[Service]
RestartSec=2s
Type=simple
User=git
Group=git
WorkingDirectory=/var/lib/gitea/
ExecStart=/usr/local/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


Guardar y salir del archivo. Luego, vuelva a cargar systemd daemon e inicie el servicio Gitea usando el siguiente comando:

sudo systemctl daemon-reload
sudo systemctl start gitea

A continuación, debe habilitar el servicio Gitea al reiniciar el sistema:

sudo systemctl enable gitea

A continuación, verifica el estado de Gitea con el siguiente comando:Publicidad

sudo systemctl status gitea

Debería ver el siguiente resultado:

Consulta el estado de Gitea

Como puede ver, Gitea se inicia y se ejecuta en el puerto 3000 de forma predeterminada. Puede verificar el puerto de Gitea con el siguiente comando:

netstat -tulpan | grep 3000

Debería ver una salida como la siguiente:

tcp6       0      0 :::3000                 :::*                    LISTEN      43778/gitea

Paso 6: acceda a la interfaz web de Gitea

Gitea ahora está activo y escuchando en el puerto 3000 de forma predeterminada. Abre tu navegador y escribe https://TUDIRECCIÓNIPAD:3000.

A continuación, complete los parámetros requeridos de la siguiente manera:

Configuración de la base de datos

Tipo de base de datos: PostgreSQL
Anfitrión: 127.0.0.1:5432
Nombre de usuario: gitea
Contraseña: ingrese la contraseña que eligió durante la creación del rol de Postgres.
Nombre de la base de datos: giteadb
SSL: deshabilitar

Configuración de la base de datos de Gitea

Configuración general

Título del sitio: Título de su elección.
Ruta raíz del repositorio: /var/lib/gitea/data/repositories
Ruta raíz de Git LFS: /var/lib/gitea/data/lfs
Ejecutar como nombre de usuario: git
Dominio del servidor SSH: su_dominio/IP
Puerto del servidor SSH: 22
Gitea HTTP Escuchar Publicación: 3000
URL base de Gitea: http://TUDIRECCIÓNIP:3000
Ruta de registro: /var/lib/gitea/log

Ajustes Generales de Gitea

En esta etapa, puede configurar su correo electrónico y la configuración del servidor y de terceros, o puede hacerlo más tarde. Sin embargo, debe configurar el administrador

nombre de usuario para iniciar sesión en Gitea. Por lo tanto, vaya a Configuración opcional e ingrese los detalles de Configuración de la cuenta del administrador y cree ‘Usuario administrador’ para Gitea.

Ajustes Opcionales de Gitea

A continuación, haga clic en el botón ‘Instalar Gitea’. Una vez que la instalación se haya completado con éxito, será redirigido al panel de control de Gitea que se muestra en la siguiente página:

Tablero Gitea

Ahora, puede explorar Gitea y, desde la opción Administración del sitio desde su cuenta de administrador, puede configurar otros servicios de terceros, como la integración del directorio activo de Windows con Gitea.

Resumen de Gitea

Paso 7: configuración de notificaciones por correo electrónico

Puede habilitar las notificaciones por correo electrónico en Gitea mediante Sendmail o a través de un servicio de correo electrónico de terceros, como Amazon SES, Sendgrid.

Para habilitar las notificaciones por correo electrónico, abra el archivo de configuración de Gitea con el siguiente comando:

vim /etc/gitea/app.in

Luego, edite la siguiente sección en el archivo y agregue el siguiente código según su configuración de correo electrónico.

[mailer]
ENABLED        = true
FROM           = [email protected]
MAILER_TYPE    = smtp
HOST           = mail.example.com:587
IS_TLS_ENABLED = true
USER           = [email protected]
PASSWD         = password

Guarde y salga del archivo y reinicie el servicio de Gitea para aplicar los cambios:

sudo systemctl restart gitea

Paso 10 – Actualizar Gitea

Actualizar Gitea es un proceso sencillo y solo necesita descargar y reemplazar el binario de Gitea.

Primero, detenga el servicio de Gitea:

sudo systemctl stop gitea

A continuación, descargue e instale el binario de Gitea con el siguiente comando:

cd /tmp
GITEAVERSION=LATESTVERSION
wget -O gitea https://dl.gitea.io/gitea/${GITEAVERSION}/gitea-${GITEAVERSION}-linux-amd64
sudo mv gitea /usr/local/bin
sudo chmod +x /usr/local/bin/gitea

A continuación, inicie el servicio de Gitea con el siguiente comando:

sudo systemctl start gitea

Ahora, su Gitea está actualizada sin ningún tiempo de inactividad.

Conclusión

¡Felicidades! Ha instalado con éxito el servicio git de Gitea en Debian 11. Ahora puede actualizar fácilmente Gitea y administrar su repositorio git a través de un navegador web. Además, puede preguntarme si tiene alguna pregunta.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *