GitScrum è uno strumento di gestione dei progetti open source basato sul framework Laravel e progettato per aiutare i team di sviluppo a utilizzare Git e Scrum per la gestione delle attività affinché siano più agili. Può essere integrato con Github o Gitlab o Bitbucket. È progettato per startup, vendite, agenzie di marketing, sviluppatori e liberi professionisti per gestire facilmente il proprio progetto. Offre funzionalità molto utili tra cui Product Backlog, User Story, Sprint Backlog, Issues e altro.
In questo tutorial, spiegheremo come installare GitScrum sul server Ubuntu 20.04.
Prerequisiti
- Un server che esegue Ubuntu 20.04.
- Un nome di dominio valido puntato con il tuo VPS.
- Una password di root è impostata sul tuo server.
Per iniziare
Innanzitutto, dovrai aggiornare i pacchetti di sistema all'ultima versione. Puoi aggiornarli con il seguente comando:
apt-get update -y
apt-get upgrade -y
Una volta aggiornato il sistema, riavvialo per applicare le modifiche.
Installa Apache, MariaDB e PHP
GitScrum funziona sul server web, utilizza MariaDB/MySQL per il backend del database e si basa sul framework Laravel. Quindi dovrai installare il server web Apache, MariaDB, PHP e le estensioni PHP richieste nel tuo sistema. Puoi installarli tutti eseguendo il seguente comando:
apt-get install apache2 mariadb-server libapache2-mod-php7.4 php7.4 php7.4-cli php7.4-mysql php7.4-zip php7.4-json php7.4-gd php7.4-mbstring php7.4-curl php7.4-xml php-pear php7.4-bcmath php7.4-common git openssl unzip -y
Una volta installati tutti i pacchetti, modifica il file php.ini e cambialo con alcuni valori desiderati:
nano /etc/php/7.4/apache2/php.ini
Modifica le seguenti righe:
memory_limit = 256M upload_max_filesize = 100M max_execution_time = 360 date.timezone = America/Chicago
Salva e chiudi il file quando hai finito. Quindi, avvia il servizio Apache e MariaDB e abilita l'avvio al riavvio del sistema con il seguente comando:
systemctl start apache2
systemctl start mariadb
systemctl enable apache2
systemctl enable mariadb
Una volta terminato, puoi procedere al passaggio successivo.
Configura database per GitScrum
Innanzitutto, dovrai proteggere l'installazione di MariaDB e impostare una password di root di MariaDB. Puoi farlo eseguendo il seguente script:
mysql_secure_installation
Questo script imposterà la password di root di MariaDB, rimuoverà gli utenti anonimi, non consentirà l'accesso root in remoto e rimuoverà il database di test come mostrato di seguito:
Enter current password for root (enter for none): OK, successfully used password, moving on... Set root password? [Y/n] Y 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 volta che MariaDB è protetto, accedi alla shell MariaDB con il seguente comando:
mysql -u root -p
Fornisci la tua password di root MariaDB quando richiesto, quindi crea un database e un utente per GitScrum con il seguente comando:
MariaDB [(none)]> CREATE DATABASE gitscrum;
MariaDB [(none)]> CREATE USER 'gitscrum'@'localhost' IDENTIFIED BY 'password';
Quindi, concedi tutti i privilegi a gitscrum con il seguente comando:
MariaDB [(none)]> GRANT ALL ON gitscrum.* TO 'gitscrum'@'localhost' WITH GRANT OPTION;
Quindi, svuota i privilegi ed esci dalla shell MariaDB con il seguente comando:
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;
Una volta configurato il database, puoi procedere al passaggio successivo.
Installa Composer
Successivamente, dovrai installare Composer nel tuo sistema. Composer è un gestore delle dipendenze per PHP e viene utilizzato per installare le dipendenze PHP necessarie per il tuo progetto.
Puoi installare il Composer con il seguente comando:
apt-get install composer -y
Una volta installato, puoi verificare la versione installata di Composer con il seguente comando:
composer --version
Dovresti vedere il seguente output:
Composer 1.10.1 2020-03-13 20:34:27
Una volta terminato, puoi procedere al passaggio successivo.
Scarica GitScrum
Innanzitutto, cambia la directory nella directory principale web di Apache e scarica l'ultima versione di GitScrum dal repository Git con il seguente comando:
cd /var/www/html
git clone https://github.com/GitScrum-Community/laravel-gitscrum.git
Una volta completato il download, cambia la directory in laravel-gitscrum e aggiorna i pacchetti GitScrum con il seguente comando:
cd laravel-gitscrum
composer update
composer run-script post-root-package-install
Dovresti vedere il seguente output:
> @php -r "file_exists('.env') || copy('.env.example', '.env');"
Una volta terminato, puoi procedere al passaggio successivo.
Configura GitScrum
Per integrare GitScrum con GitLab, dovrai accedere a GitLab e creare un'app.
Puoi crearlo visitando l'URL https://gitlab.com/profile/applications. Dovresti vedere la schermata di accesso di GitLab:
Fornisci il tuo nome utente e password GitLab e fai clic su Firma dentro pulsante. Dovresti vedere la seguente schermata:
Fornisci il nome dell'applicazione, reindirizza l'URL, seleziona gli ambiti e fai clic su Salva applicazione pulsante. Dovresti vedere l'ID dell'applicazione e il segreto nella schermata seguente.
Successivamente, dovrai definire l'ID dell'applicazione e il segreto nel file .env.
nano /var/www/html/laravel-gitscrum/.env
Definisci i dettagli del database, l'URL dell'app, l'ID GitLab e il segreto come mostrato di seguito:
DB_CONNECTION=mysql DB_HOST=localhost DB_PORT=3306 DB_DATABASE=gitscrum DB_USERNAME=gitscrum DB_PASSWORD=password APP_URL=http://gitscrum.linuxbuz.com GITLAB_KEY=19ed6d8500710c32049e703c537e0c2251f41bdaedb6ca3f9d3276a0ea2fe484 GITLAB_SECRET=efe24736031571d59a5994d860f561c69d7c3bb46ab4a4fdae6406972df21565 GITLAB_INSTANCE_URI=https://gitlab.com/
Salva e chiudi il file quando hai finito. Quindi, migra il database con il seguente comando:
php artisan migrate
php artisan db:seed
Dovresti vedere il seguente output:
Seeding: ConfigIssueEffortsTableSeeder Seeding: ConfigPrioritiesTableSeeder Seeding: IssueTypesTableSeeder Seeding: ConfigStatusesTableSeeder
Quindi, cambia la proprietà e l'autorizzazione di laravel-gitscrum con il seguente comando:
chown -R www-data:www-data /var/www/html/laravel-gitscrum
chmod -R 775 /var/www/html/laravel-gitscrum
Una volta terminato, puoi procedere al passaggio successivo.
Configura Apache per GitScrum
Successivamente, dovrai creare un file di configurazione dell'host virtuale Apache per GitScrum. Puoi crearlo con il seguente comando:
nano /etc/apache2/sites-available/gitscrum.conf
Aggiungi le seguenti righe:
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/html/laravel-gitscrum/public/ ServerName gitscrum.linuxbuz.com ErrorLog /var/log/apache2/gitscrum-error.log CustomLog /var/log/apache2/gitscrum-access.log combined <Directory /var/www/html/laravel-gitscrum/public/> Options +FollowSymlinks AllowOverride All Require all granted </Directory> </VirtualHost>
Salva e chiudi il file quando hai finito. Quindi, verifica Apache per eventuali errori di configurazione con il seguente comando:
apachectl configtest
Se tutto va bene, dovresti vedere il seguente output:
Syntax OK
Quindi, abilita l'host virtuale GitScrum con il seguente comando:
a2ensite gitscrum.conf
Quindi, abilita il modulo di riscrittura di Apache e riavvia il servizio Apache per applicare le modifiche:
a2enmod rewrite
systemctl restart apache2
Puoi anche verificare lo stato del servizio Apache utilizzando il seguente comando:
systemctl status apache2
Dovresti ottenere il seguente output:
? apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2020-07-03 07:42:29 UTC; 4min 35s ago Docs: https://httpd.apache.org/docs/2.4/ Process: 16070 ExecReload=/usr/sbin/apachectl graceful (code=exited, status=0/SUCCESS) Main PID: 13697 (apache2) Tasks: 6 (limit: 2353) Memory: 23.5M CGroup: /system.slice/apache2.service ??13697 /usr/sbin/apache2 -k start ??16074 /usr/sbin/apache2 -k start ??16075 /usr/sbin/apache2 -k start ??16076 /usr/sbin/apache2 -k start ??16077 /usr/sbin/apache2 -k start ??16078 /usr/sbin/apache2 -k start July 03 07:42:29 ubuntu20 systemd[1]: Starting The Apache HTTP Server...
A questo punto, il server web Apache è configurato per servire GitScrum. Ora puoi procedere al passaggio successivo.
Accedi all'interfaccia Web di GitScrum
Ora apri il tuo browser web e digita l'URL http://gitscrum.linuxbuz.com. Verrai reindirizzato alla seguente pagina:
Fai clic su GitLab pulsante per accedere con GitLab. Dovresti vedere la seguente schermata:
Fornisci il tuo nome utente e password GitLab e fai clic su Firma dentro pulsante. Dovresti vedere la seguente schermata:
Ora, fai clic su Autorizza pulsante per autorizzare GitScrum a utilizzare il tuo account. Dovresti vedere la seguente schermata:
Ora puoi importare il tuo repository su GitScrum e iniziare a lavorare.
Conclusione
Congratulazioni! hai installato con successo GitScrum e lo hai integrato con GitLab sul server Ubuntu 20.04. Ora puoi distribuire GitScrum nell'ambiente di sviluppo e iniziare a utilizzare Git con Scrum per la gestione delle attività. Per maggiori informazioni visita la documentazione ufficiale di GitScrum. Sentiti libero di chiedermi se hai domande.