GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar GitBucket con Nginx en Ubuntu 18.04 LTS

GitBucket es una plataforma Git gratuita y de código abierto impulsada por Scala con compatibilidad con la API de Github. Es simple, liviano y alternativo a Github o BitBucket. Viene con un conjunto de características de alcance que incluyen soporte para GitLFS, problemas, solicitud de extracción, notificaciones, sistema de complemento, repositorios públicos y privados de Git. Se puede integrar fácilmente con LDAP para la gestión de cuentas y grupos.

En este tutorial, aprenderemos cómo instalar y configurar GitBucket en el servidor Ubuntu 18.04.

Requisitos

  • Un servidor nuevo con Ubuntu 18.04.
  • Se ha configurado una contraseña raíz en su instancia.

Cómo empezar

Antes de comenzar, actualice su sistema con la última versión estable. Puedes hacerlo con el siguiente comando:

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

Una vez actualizado, reinicie su servidor para aplicar todos los cambios de configuración.

Instalar Java

GitBucket requiere que Java 8 o posterior esté instalado en su servidor. Por lo tanto, deberá instalar Java en su servidor.

Para instalar Java ejecute el siguiente comando:

apt-get install default-jdk -y

Una vez que Java está instalado, puede verificar la versión de Java usando el siguiente comando:

java -version

Debería ver el siguiente resultado:

openjdk version "10.0.2" 2018-07-17
OpenJDK Runtime Environment (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.2)
OpenJDK 64-Bit Server VM (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.2, mixed mode)

Una vez que haya terminado, puede continuar con el siguiente paso.

Instalar GitBucket

Antes de instalar GitBucket, deberá crear un usuario sin privilegios para ejecutar GitBucket.

Ejecute el siguiente comando para crear un usuario del sistema llamado gitbucket.

groupadd -g 555 gitbucket
useradd -g gitbucket --no-user-group --home-dir /opt/gitbucket --no-create-home --shell /usr/sbin/nologin --system --uid 555 gitbucket

A continuación, descargue GitBucket del repositorio de Git con el siguiente comando:

wget https://github.com/gitbucket/gitbucket/releases/download/4.31.2/gitbucket.war

Una vez que se complete la descarga, cree un directorio para GitBucket dentro de /opt

mkdir /opt/gitbucket

A continuación, mueva el archivo descargado al directorio de gitbucket:

mv gitbucket.war /opt/gitbucket

A continuación, otorgue el permiso adecuado al directorio gitbucket con el siguiente comando:

chown -R gitbucket:gitbucket /opt/gitbucket

Una vez que haya terminado, puede continuar con el siguiente paso.

Crear archivo de servicio Systemd para GitBucket

A continuación, deberá crear un archivo de servicio de Systemd para que GitBucket administre el servicio de GitBucket. Puedes crearlo con el siguiente comando:

nano /etc/systemd/system/gitbucket.service

Agregue las siguientes líneas:

# GitBucket Service
[Unit]
Description=Manage Java service

[Service]
WorkingDirectory=/opt/gitbucket
ExecStart=/usr/bin/java -Xms128m -Xmx256m -jar gitbucket.war
User=gitbucket
Group=gitbucket
Type=simple
Restart=on-failure
RestartSec=10

[Install]
WantedBy=multi-user.target

Guarde y cierre el archivo. Luego, recarga Systemd con el siguiente comando:

systemctl daemon-reload

A continuación, inicie el servicio gitbucket y habilítelo para que se inicie en el momento del arranque con el siguiente comando:

systemctl enable gitbucket
systemctl start gitbucket

Ahora puede verificar el estado de gitbucket con el siguiente comando:

systemctl status gitbucket

Debería ver el siguiente resultado:

? gitbucket.service - Manage Java service
   Loaded: loaded (/etc/systemd/system/gitbucket.service; disabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-08-09 09:43:42 UTC; 5s ago
 Main PID: 17835 (java)
    Tasks: 18 (limit: 1113)
   CGroup: /system.slice/gitbucket.service
           ??17835 /usr/bin/java -Xms128m -Xmx256m -jar gitbucket.war

Aug 09 09:43:42 ubuntu1804 systemd[1]: Started Manage Java service.
Aug 09 09:43:45 ubuntu1804 java[17835]: 2019-07-09 09:43:45.102:INFO::main: Logging initialized @2700ms to org.eclipse.jetty.util.log.StdErrLog
Aug 09 09:43:46 ubuntu1804 java[17835]: 2019-07-09 09:43:46.134:INFO:oejs.Server:main: jetty-9.4.z-SNAPSHOT; built: 2018-11-14T21:20:31.478Z; g
lines 1-11/11 (END)

Una vez que haya terminado, puede continuar con el siguiente paso.

Configurar conexión de base de datos para GitBucket

GitBucket viene con una base de datos H2 integrada. Para configurar la conexión de la base de datos, abra el archivo database.conf con su editor de texto favorito:

nano /opt/gitbucket/database.conf

Agregue las siguientes líneas:

db {
  url = "jdbc:h2:${DatabaseHome};MVCC=true"
  user = "sa"
  password = "sa"
}

Una vez que haya terminado, puede continuar con el siguiente paso.

Configurar Nginx como proxy inverso

De forma predeterminada, GitBucket se ejecuta en el puerto 8080. Por lo tanto, deberá configurar Nginx como un proxy inverso para mejorar el rendimiento y habilitar otras funciones como HTTP/2 y cifrado TLS.

Para hacerlo, primero instale Nginx con el siguiente comando:

apt-get install nginx -y

A continuación, cree un proxy inverso para GitBucket creando el siguiente archivo:

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

Agregue las siguientes líneas:

upstream gitbucket {
  server 127.0.0.1:8080 weight=100 max_fails=5 fail_timeout=5;
}

server {
  listen          80;
  server_name     your-domain.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://gitbucket/;
  }
}

Guarde y cierre el archivo. Luego, habilite el host virtual Nginx usando el siguiente comando:

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

A continuación, compruebe si hay errores de sintaxis en Nginx y reinicie el servicio Nginx con el siguiente comando:

nginx -t

Debería ver el siguiente resultado:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
systemctl restart nginx

Una vez que haya terminado, puede continuar con el siguiente paso.

Acceder a la interfaz web de GitBucket

GitBucket ahora está instalado y configurado. Abra su navegador web y escriba la URL http://su-dominio.com. Será redirigido a la siguiente página:

Ahora, haga clic en Iniciar sesión botón. Será redirigido a la página de inicio de sesión como se muestra a continuación:

Ahora, proporcione el nombre de usuario y la contraseña predeterminados como root / root y haga clic en Iniciar sesión botón. Debería ver el panel de control de GitBucket en la siguiente página:

A continuación, vaya a Configuración de la cuenta para cambiar la contraseña raíz predeterminada como se muestra en la siguiente página:

¡Felicidades! Ha instalado y configurado correctamente GitBucket en el servidor Ubuntu 18.04 LTS. Siéntase libre de preguntarme si tiene alguna pregunta.


Ubuntu
  1. Cómo instalar Seafile con Nginx en Ubuntu 20.04 LTS

  2. Cómo instalar MediaWiki con Nginx en Ubuntu 16.04

  3. Cómo instalar Seafile con Nginx en Ubuntu 18.04 LTS

  4. Cómo instalar Nginx con Google PageSpeed ​​en Ubuntu 20.04

  5. Cómo implementar Modsecurity con Nginx en Ubuntu 20.04 LTS

Cómo instalar GitBucket con Nginx en Ubuntu 20.04 LTS

Cómo instalar phpMyAdmin con Nginx (LEMP) en Ubuntu 18.04 LTS

Cómo instalar Nginx con el módulo Ngx_Pagespeed en Ubuntu 16.04 LTS

Cómo instalar Joomla con Nginx en Ubuntu 18.04 LTS

Cómo instalar phpMyAdmin con Nginx en Ubuntu 18.04 LTS

Cómo instalar phpMyAdmin con Nginx en Ubuntu 20.04 LTS