GNU/Linux >> Tutoriales Linux >  >> Debian

Cómo instalar Gitea en Debian 9

En este tutorial, le mostraremos cómo instalar Gitea en Debian 9. También le mostraremos cómo implementar el servicio Gitea git en un VPS Debian 9.

Gitea es un sistema de control de versiones gratuito, de código abierto y ligero escrito en Golang. Es un servicio Git autohospedado y una solución alternativa a GitHub, Bitbucket y Gitlab. Su objetivo principal es proporcionar la forma más fácil de configurar un servicio Git autohospedado. Se ejecuta en múltiples plataformas, incluidas Linux, macOS y Windows. Gitea también es compatible con varios sistemas de bases de datos, incluidos SQLite, MySQL y PostgreSQL listos para usar. La instalación de Gitea en Debian 9 no debería llevar más de 10 minutos. Comencemos.

Requisitos previos:

  • Un VPS Debian 9 con acceso raíz habilitado o un usuario con privilegios sudo.
  • Un nombre de dominio válido dirigido a la dirección IP de su servidor. En este tutorial, usaremos gitea.mydomain.com .

Paso 1:Iniciar sesión y actualizar paquetes

Primero, necesitaremos iniciar sesión en nuestro servidor usando SSH. Puede hacerlo ingresando este comando:

ssh root@IP_Address -p Port_Number

Recuerde reemplazar "root" con su nombre de usuario si no está utilizando el usuario root. Cambie "IP_Address" y "Port_Number" según la dirección IP de su servidor y el número de puerto SSH.

Una vez que haya iniciado sesión, debe actualizar todos sus paquetes a sus últimas versiones disponibles.

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

Paso 2:Instalar y configurar la base de datos MariaDB

Gitea usa SQLite, MySQL/MariaDB y PostgreSQL para almacenar sus datos. Aquí, usaremos MariaDB para nuestra solución de base de datos.

Instalemos MariaDB ejecutando el siguiente comando:

apt-get install mariadb-server mariadb-client -y

Una vez instalado, ejecute el siguiente comando para asegurar la instalación de MariaDB:

mysql_secure_installation

Este comando establecerá la contraseña de root, eliminará a los usuarios anónimos, no permitirá el inicio de sesión de root de forma remota y eliminará la base de datos de prueba como se muestra a continuación:

Enter current password for root (enter for none): press [Enter]
Set root password? [Y/n]: N
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

Una vez que MariaDB esté protegido, inicie sesión en el shell de MariaDB con el siguiente comando:

mysql -u root -p

Ingrese su contraseña de root cuando se le solicite, luego cambie el GLOBAL innodeb_file_per_table a On :

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

A continuación, cree una base de datos y un usuario para Gitea con el siguiente comando:

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

Asegúrese de elegir una contraseña única y segura para su usuario de Gitea MariaDB.

A continuación, otorga todos los privilegios a Gitea y modifica la base de datos con el siguiente comando:

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

Finalmente, elimine los privilegios y salga del shell de MariaDB con el siguiente comando:

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

A continuación, abra el archivo de configuración predeterminado de MariaDB y ajuste algunas configuraciones:

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

Agregue las siguientes líneas:

innodb_file_format = Barracuda
innodb_large_prefix = 1
innodb_default_row_format = dynamic

Guarde y cierre el archivo. Luego, reinicie el servicio MariaDB para aplicar los cambios de configuración:

systemctl restart mariadb

Paso 3:Descarga e instala Gitea en Debian 9

Vaya a la página de descarga de Gitea y descargue la última versión del paquete binario de Gitea con el siguiente comando:

wget https://github.com/go-gitea/gitea/releases/download/v1.9.1/gitea-1.9.1-linux-amd64

Una vez descargado, copie el binario descargado en /usr/local/bin directorio:

cp gitea-1.9.1-linux-amd64 /usr/local/bin/gitea

Luego, proporcione el permiso ejecutable usando el siguiente comando:

chmod 755 /usr/local/bin/gitea

Ahora puedes comprobar la versión de Gitea usando el siguiente comando:

gitea --version

Deberías obtener el siguiente resultado:

Gitea version 1.9.1 built with GNU Make 4.1, go1.12.8 : bindata, sqlite, sqlite_unlock_notify

A continuación, necesitaremos crear una estructura de directorios para nuestros repositorios, configuración y archivos de registro. Ejecute el siguiente comando para crear la estructura de directorios de Gitea:

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

Paso 4:Cree un archivo de servicio de Systemd para Gitea

Ahora, necesitaremos crear un archivo de servicio systemd para administrar el servicio Gitea. Puede iniciar, detener y reiniciar el servicio de Gitea con Systemd.

Ejecute el siguiente comando para crear un archivo de servicio systemd:

nano /etc/systemd/system/gitea.service

Agregue las siguientes líneas:

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

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

[Install]
WantedBy=multi-user.target

Guarde y cierre el archivo. Luego, vuelva a cargar la lista de demonios de systemd con el siguiente comando:

systemctl daemon-reload

A continuación, inicie el servicio Gitea y habilítelo para que se inicie automáticamente después de reiniciar el sistema con los siguientes comandos:

systemctl start gitea
systemctl enable gitea

También puede consultar el estado del servicio de Gitea mediante el siguiente comando:

systemctl status gitea

Deberías obtener el siguiente resultado:

● gitea.service - Gitea
Loaded: loaded (/etc/systemd/system/gitea.service; disabled; vendor preset: enabled)
Active: active (running) since Wed 2019-08-21 10:44:06 UTC; 7s ago
Main PID: 3995 (gitea)
Tasks: 6 (limit: 7372)
CGroup: /system.slice/gitea.service
└─3995 /usr/local/bin/gitea web -c /etc/gitea/app.ini

Aug 21 10:44:06 debian9 gitea[3995]: 2019/08/21 10:44:06 routers/init.go:74:GlobalInit() [T] Custom path: /var/lib/gitea/custom
Aug 21 10:44:06 debian9 gitea[3995]: 2019/08/21 10:44:06 routers/init.go:75:GlobalInit() [T] Log path: /var/lib/gitea/log
Aug 21 10:44:06 debian9 gitea[3995]: 2019/08/21 10:44:06 ...dules/setting/log.go:226:newLogService() [I] Gitea v1.9.1 built with GNU Make 4.1, g
Aug 21 10:44:06 debian9 gitea[3995]: 2019/08/21 10:44:06 ...dules/setting/log.go:269:newLogService() [I] Gitea Log Mode: Console(Console:info)
Aug 21 10:44:06 debian9 gitea[3995]: 2019/08/21 10:44:06 ...les/setting/cache.go:42:newCacheService() [I] Cache Service Enabled
Aug 21 10:44:06 debian9 gitea[3995]: 2019/08/21 10:44:06 ...s/setting/session.go:45:newSessionService() [I] Session Service Enabled
Aug 21 10:44:06 debian9 gitea[3995]: 2019/08/21 10:44:06 routers/init.go:106:GlobalInit() [I] SQLite3 Supported
Aug 21 10:44:06 debian9 gitea[3995]: 2019/08/21 10:44:06 routers/init.go:37:checkRunMode() [I] Run Mode: Development
Aug 21 10:44:07 debian9 gitea[3995]: 2019/08/21 10:44:07 cmd/web.go:151:runWeb() [I] Listen: http://0.0.0.0:3000
Aug 21 10:44:07 debian9 gitea[3995]: 2019/08/21 10:44:07 ...ce/gracehttp/http.go:142:Serve() [I] Serving [::]:3000 with pid 3995

Por defecto, Gitea se ejecuta en el puerto 3000. Puedes comprobarlo con el siguiente comando:

netstat -ant | grep 3000

Salida:

tcp6 0 0 :::3000 :::* LISTEN

Paso 5:configurar Nginx como proxy inverso para Gitea

Si desea acceder a su instalación de Gitea mediante un dominio, deberá crear un proxy inverso.

Primero, instale el servidor web Nginx con el siguiente comando:

apt-get install nginx -y

Una vez instalado, cree un nuevo bloque de servidor de host virtual para Gitea:

nano /etc/nginx/sites-available/gitea.conf

Agregue las siguientes líneas:

upstream gitea {
 server 127.0.0.1:3000 weight=100 max_fails=5 fail_timeout=5;
}

server {
 listen 80;
 server_name gitea.mydomain.com;

location / {
  proxy_set_header X-Forwarded-Host $host;
  proxy_set_header X-Forwarded-Server $host;
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  proxy_pass http://gitea/;
 }
}

Recuerde reemplazar mydomain.com con su propio dominio registrado.

Guarde y cierre el archivo. Luego, verifique Nginx en busca de errores de sintaxis con el siguiente comando:

nginx -t

A continuación, habilite la directiva de host virtual con el siguiente comando:

ln -s /etc/nginx/sites-available/gitea.conf /etc/nginx/sites-enabled/

Finalmente, reinicie el servicio Nginx para aplicar los cambios de configuración:

systemctl restart nginx

Paso 6:Acceda al asistente de instalación web de Gitea

Ahora, abra su navegador web y visite la URL http://gitea.mydomain.com/install . Será redirigido a la página de instalación de Gitea:

Ingrese la información de su base de datos, el título del sitio, la URL base de Gitea y la URL del servidor, la información de la cuenta de administrador y haga clic en Instalar Gitea. botón. Una vez que la instalación se haya completado con éxito, será redirigido a la pantalla del panel de control de Gitea:

Ahora, haga clic en + botón para crear tu primer repositorio:

Proporcione los detalles de su repositorio y haga clic en el botón Crear repositorio. Una vez que se haya creado el repositorio, debería ver la siguiente página:

Ahora, haga clic en el botón Cargar archivo. Debería ver la siguiente página:

Cargue su archivo, agregue una descripción en el cuadro Confirmar cambios y haga clic en el botón Confirmar cambios. Debería ver su archivo recién cargado en la siguiente página:

¡Felicitaciones! Ha instalado correctamente Gitea en un VPS Debian 9 y ha creado un proyecto de prueba. También ha configurado Gitea detrás de Nginx Reverse Proxy. Ahora puede crear sus propios repositorios con Gitea e implementarlos en un entorno de desarrollo. Para más información, puedes visitar la documentación oficial de Gitea.

Siga este tutorial para instalar Gitea en Ubuntu 20.04

Por supuesto, no tienes que i ninstalar Gitea en Debian 9 si tiene un servidor Debian administrado con nosotros. Simplemente puede pedirle a nuestro equipo de soporte que instale Gitea en Debian 9 por usted. Están disponibles las 24 horas del día, los 7 días de la semana y podrán ayudarlo con la instalación.

PD . Si disfrutó leyendo esta publicación de blog sobre cómo instalar Gitea en Debian 9, siéntase libre de compartirla en las redes sociales utilizando los accesos directos a continuación, o simplemente deje un comentario en la sección de comentarios. Gracias.


Debian
  1. Cómo instalar MariaDB en Debian 9

  2. Cómo instalar MariaDB en Debian 10

  3. Cómo instalar MariaDB en Debian 11

  4. Cómo instalar MariaDB 10.x en Debian 11

  5. Cómo instalar MariaDB en Debian 11

Cómo instalar MariaDB en Debian 11

Cómo instalar Nextcloud en Debian 11

Cómo instalar Drupal en Debian 11

Cómo instalar WordPress en Debian 11

Cómo instalar Gitea en Debian 11

Cómo instalar PrestaShop en Debian 11