Cómo instalar GitScrum en Debian

GitScrum es una aplicación de gestión de tareas en Laravel, gratuita y de código abierto, que te ayuda a gestionar tus proyectos fácilmente. Utiliza Git y la metodología Scrum que permite a tu equipo gestionar sus tareas de forma más eficiente. Con GitScrum, puedes realizar fácilmente un seguimiento del tiempo consumido en las tareas y subtareas en las que estás trabajando. Te permite crear proyectos y asignar usuarios y sus niveles de permiso, y chatear en tiempo real.

Viene con un rico conjunto de características que incluyen, Historias de Usuario, Sprint, Flujo de Trabajo Flexible, Seguimiento del Tiempo, Hoja de Ruta, Monitorización de KPI, Gestión de Backlog, Tablero de Colaboración, Esfuerzo de la Tarea, Rendimiento del Equipo, Almacenamiento Ilimitado, Colaboración y muchas más. GitScrum es una de las mejores herramientas para la gestión de proyectos, aparte de otras herramientas como Microsoft Project, Kanban y Trello. Es una solución perfecta para cualquier startup, ventas, marketing, agencias, desarrolladores y autónomos.

En este tutorial, te mostraremos cómo instalar el software de gestión de proyectos GitScrum en un servidor Debian 10.

Requisitos previos

  • Un servidor con Debian 10.
  • Un nombre de dominio válido apuntado con la dirección IP de tu servidor. En este tutorial, utilizaremos test.linuxbuz.com.
  • Una contraseña de root configurada en el servidor.

Cómo empezar

Antes de empezar, es conveniente que actualices tu sistema con la última versión. Puedes actualizar tu sistema con el siguiente comando:

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

Después de actualizar el sistema, reinícialo para aplicar los cambios.

Instalar el servidor LAMP

En primer lugar, tendrás que instalar el servidor web Apache, el servidor MariaDB, PHP y otras extensiones de PHP en tu servidor. Puedes instalarlos todos con el siguiente comando:

apt-get install apache2 mariadb-server libapache2-mod-php php php-cli php-common php-mailparse php-mysql php-gmp php-curl php-mbstring php-imap php-ldap php-gd php-xml php-cli php-zip php-yaml php-dev php-pear unzip curl git -y

Una vez instalados todos los paquetes, abre el archivo php.ini y modifica algunos ajustes:

nano /etc/php/7.3/apache2/php.ini

Cambia los siguientes valores:

memory_limit = 256M
upload_max_filesize = 100M
max_execution_time = 300
date.timezone = Asia/Kolkata

Guarda y cierra el archivo cuando hayas terminado. A continuación, inicia el servicio de Apache y MariaDB y permite que se inicien tras el reinicio del sistema con el siguiente comando:

systemctl start apache2
 systemctl start mariadb
 systemctl enable apache2
 systemctl enable mariadb

Una vez que hayas terminado, puedes pasar al siguiente paso.

Configurar la base de datos MariaDB

Por defecto, la contraseña de root de MariaDB no está configurada en Debian 10. Por lo tanto, tendrás que configurarla primero.

Para ello, entra en el shell de MariaDB con el siguiente comando:

mysql

Una vez iniciada la sesión, establece la contraseña de root de MariaDB con el siguiente comando:

MariaDB [(none)]> SET PASSWORD FOR 'root'@'localhost' = PASSWORD("rootpassword");

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

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

A continuación, concede todos los privilegios en la base de datos de GitScrum con el siguiente comando:

MariaDB [(none)]> GRANT ALL ON gitscrumdb.* TO 'gitscrumuser'@'localhost' WITH GRANT OPTION;

A continuación, vacía los privilegios y sal del shell de MariaDB con el siguiente comando

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

En este punto, la base de datos MariaDB está configurada para GitScrum. Ahora puedes pasar al siguiente paso.

Instalar Composer

El Composer es un gestor de dependencias para PHP. Se utiliza para instalar las dependencias de PHP necesarias para construir tu proyecto.

Primero, descarga el archivo de instalación de Composer con el siguiente comando:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

A continuación, tendrás que verificar la integridad de los datos del archivo descargado. Puedes verificarlo con el siguiente comando:

HASH="$(wget -q -O - https://composer.github.io/installer.sig)"
 php -r "if (hash_file('SHA384', 'composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

Si todo está bien, deberías obtener la siguiente salida:

Installer verified

Por último, ejecuta el siguiente comando para instalar el Composer en tu sistema:

php composer-setup.php --install-dir=/usr/local/bin --filename=composer

En este punto, el Composer está instalado en tu sistema. Ahora puedes pasar al siguiente paso.

Instalar GitScrum

A continuación, cambia el directorio al directorio raíz de Apache y descarga GitScrum con el siguiente comando:

cd /var/www/html
 composer create-project gitscrum-community-edition/laravel-gitscrum --stability=stable --keep-vcs

Deberías obtener la siguiente salida:

Generating autoload files
> Illuminate\Foundation\ComposerScripts::postInstall
> php artisan optimize
Generating optimized class loader
The compiled class file has been removed.
> php artisan key:generate
Application key [base64:yWIVSUl6uHXpIcSt5wxsplPwGJjSj9uWKYjy/4q2XY0=] set successfully.

A continuación, cambia el directorio al directorio descargado y actualiza el GitScrum con el siguiente comando:

cd laravel-gitscrum
 composer update
 composer run-script post-root-package-install

A continuación, tendrás que integrar GitScrum con Github. Para ello, crea una nueva aplicación en Github utilizando el siguiente enlace:

https://github.com/settings/applications/new

Deberías ver la siguiente pantalla:

Inscripción en Git scrum

Proporciona tu nombre de usuario y contraseña de GitHub y haz clic en el botón Iniciar sesión. Deberías ver la siguiente pantalla:

Registro OAuth

Proporciona el nombre de tu aplicación, la URL de la página de inicio y haz clic en el botón Registrar aplicación. Deberías ver la siguiente pantalla:

Aplicación GitScrum

Después de registrar la nueva aplicación, copia el ID de cliente y el secreto de cliente de la página anterior. A continuación, abre el archivo .env como se muestra a continuación:

nano /var/www/html/laravel-gitscrum/.env

Añade las siguientes líneas con el nombre de tu base de datos, el nombre de usuario, la contraseña, el ID de cliente y el secreto de cliente:

APP_ENV=local
APP_KEY=base64:W2ToyfW8zHqtWfcZb1hp2kZgccbuy3XtERDyZywtVkE=
APP_DEBUG=true
APP_LOG_LEVEL=debug
APP_URL=http://test.linuxbuz.com
APP_TITLE=GitScrum

GITHUB_CLIENT_ID=39f148ce467544b487cb
GITHUB_CLIENT_SECRET=370f0cfc50c8fca9179fae3f74b229b6b69b05f6

GITLAB_KEY=
GITLAB_SECRET=
GITLAB_INSTANCE_URI=https://gitlab.com/

DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=gitscrumdb
DB_USERNAME=gitscrumuser
DB_PASSWORD=password

APP_PAGINATE=10

PROXY_PORT=
PROXY_METHOD=
PROXY_SERVER=
PROXY_USER=
PROXY_PASS=

Guarda y cierra el archivo cuando hayas terminado. A continuación, ejecuta el siguiente comando para migrar la base de datos:

php artisan migrate
 php artisan db:seed

Deberías ver la siguiente salida:

Seeded: ConfigIssueEffortsTableSeeder
Seeded: ConfigPrioritiesTableSeeder
Seeded: IssueTypesTableSeeder
Seeded: ConfigStatusesTableSeeder

A continuación, da los permisos adecuados al directorio GitScrum con el siguiente comando:

chown -R www-data:www-data /var/www/html/laravel-gitscrum/
 chmod -R 775 /var/www/html/laravel-gitscrum/

Una vez que hayas terminado, puedes pasar al siguiente paso.

Configurar Apache para GitScrum

A continuación, tendrás que configurar el host virtual de Apache para GitScrum. Puedes configurarlo creando el siguiente archivo:

nano /etc/apache2/sites-available/gitscrum.conf

Añade las siguientes líneas:

<VirtualHost *:80>
     ServerAdmin [email protected]
     DocumentRoot /var/www/html/laravel-gitscrum/public
     ServerName test.linuxbuz.com

     <Directory /var/www/html/laravel-gitscrum/public>
          Options FollowSymlinks
          AllowOverride All
          Require all granted
     </Directory>

     ErrorLog ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Guarda y cierra el archivo cuando hayas terminado. A continuación, comprueba si el archivo de configuración de Apache presenta algún error de sintaxis con el siguiente comando:

apache2ctl configtest

Si todo está bien, deberías obtener la siguiente salida:

Syntax OK

A continuación, activa el host virtual y el módulo de reescritura de Apache con el siguiente comando:

a2ensite gitscrum.conf
 a2enmod rewrite

Por último, reinicia el servicio web de Apache para aplicar los cambios:

systemctl restart apache2

Ahora puedes comprobar el estado del servicio Apache con el siguiente comando:

systemctl status apache2

Deberías obtener la siguiente salida:

? apache2.service - The Apache HTTP Server
   Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
  Drop-In: /lib/systemd/system/apache2.service.d
           ??apache2-systemd.conf
   Active: active (running) since Sun 2020-02-02 12:41:30 UTC; 22min ago
  Process: 15407 ExecReload=/usr/sbin/apachectl graceful (code=exited, status=0/SUCCESS)
 Main PID: 14417 (apache2)
    Tasks: 11 (limit: 1114)
   CGroup: /system.slice/apache2.service
           ??14417 /usr/sbin/apache2 -k start
           ??15412 /usr/sbin/apache2 -k start
           ??15413 /usr/sbin/apache2 -k start
           ??15414 /usr/sbin/apache2 -k start
           ??15416 /usr/sbin/apache2 -k start
           ??15417 /usr/sbin/apache2 -k start
           ??15418 /usr/sbin/apache2 -k start
           ??15419 /usr/sbin/apache2 -k start
           ??15420 /usr/sbin/apache2 -k start
           ??15422 /usr/sbin/apache2 -k start
           ??15429 /usr/sbin/apache2 -k start

Feb 02 12:41:29 debian10 systemd[1]: Starting The Apache HTTP Server...

Una vez que hayas terminado, puedes pasar al siguiente paso.

Accede a GitScrum

Ahora, abre tu navegador web y escribe la URL http://test.linuxbuz.com. Serás redirigido a la siguiente página:

Acceder a GitScrum

Haz clic en Iniciar sesión con GitHub. Deberías ver la siguiente página:

Autorizar GitScrum

Ahora, autoriza tu cuenta para GitScrum. Deberías ver tu panel de control de GitScrum en la siguiente página:

Panel de control de GitScrum

Enhorabuena! has instalado con éxito GitScrum en un servidor Debian 10.

Scroll al inicio