TaskBoard è un'applicazione Kanban gratuita e open source utilizzata per tenere traccia delle cose che devono essere eseguite. È un'applicazione basata su PHP e self-hosted che ti aiuta a tenere traccia di tutte le attività. Fornisce un'interfaccia web semplice e intuitiva per la gestione di tutte le tue attività. Viene utilizzato da team o organizzazioni per rappresentare il lavoro e il suo percorso verso il completamento.
Caratteristiche
- Gratuito e open source
- Bacheche illimitate
- Semplice e facile da installare
- Facile personalizzazione
- API RESTful
- Gestione utenti di base
In questo tutorial, ti mostrerò come installare Taskboard su Debian 11.
Prerequisiti
- Un server che esegue Debian 11.
- Un nome di dominio valido puntato all'IP del tuo server.
- Sul server è configurata una password di root.
Per iniziare
Prima di iniziare, è una buona idea aggiornare i pacchetti di sistema alla versione aggiornata. Puoi aggiornarli tutti eseguendo il seguente comando:
apt-get update -y
Una volta aggiornati tutti i pacchetti, puoi procedere al passaggio successivo.
Installa Apache, PHP e Sqlite
Innanzitutto, dovrai installare il server Web Apache, PHP, SQLite e altre dipendenze richieste sul tuo server. Puoi installarli tutti eseguendo il seguente comando:
apt-get install apache2 sqlite3 php libapache2-mod-php php-cli php-common php-json php-readline php-sqlite3 libaio1 libapr1 libhtml-template-perl libaprutil1-dbd-sqlite3 libaprutil1-ldap libaprutil1 libdbi-perl libterm-readkey-perl curl libwrap0 unzip wget -y
Una volta installati tutti i pacchetti, avvia il servizio Apache e abilitalo all'avvio al riavvio del sistema:
systemctl start apache2
systemctl enable apache2
Una volta terminato, puoi procedere al passaggio successivo.
Scarica Taskboard
Innanzitutto, scarica l'ultima versione di Taskboard utilizzando il seguente comando:
curl -s https://api.github.com/repos/kiswa/TaskBoard/releases/latest |grep browser_download_url | cut -d '"' -f 4 | wget -i -
Una volta completato il download, estrai il file scaricato nella directory principale web di Apache con il seguente comando:
unzip TaskBoard_v*.zip -d /var/www/html/taskboard
Quindi, imposta la proprietà e l'autorizzazione appropriate nella directory della Taskboard:
chown -R www-data:www-data /var/www/html/taskboard
chmod -R 775 /var/www/html/taskboard
Una volta terminato, puoi procedere al passaggio successivo.
Configura Apache per Taskboard
Successivamente, dovrai creare un file di configurazione dell'host virtuale Apache per Taskboard. Puoi crearlo eseguendo il seguente comando:
nano /etc/apache2/sites-available/taskboard.conf
Aggiungi le seguenti righe:
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot "/var/www/html/taskboard" ServerName taskboard.example.com <Directory "/var/www/html/taskboard"> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> ErrorLog "/var/log/apache2/taskboard-error_log" CustomLog "/var/log/apache2/taskboard-access_log" combined </VirtualHost>
Salva e chiudi il file quando hai finito, quindi abilita l'host virtuale Apache con il seguente comando:
a2ensite taskboard.conf
Quindi, abilita il modulo di riscrittura di Apache e riavvia il servizio Web Apache con il seguente comando:
a2enmod rewrite
systemctl restart apache2
Ora puoi controllare lo stato del servizio Apache usando il seguente comando:
systemctl status apache2
Otterrai il seguente output:
? apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2021-11-06 14:46:54 UTC; 5s ago Docs: https://httpd.apache.org/docs/2.4/ Process: 23704 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) Main PID: 23709 (apache2) Tasks: 6 (limit: 4679) Memory: 15.3M CPU: 110ms CGroup: /system.slice/apache2.service ??23709 /usr/sbin/apache2 -k start ??23710 /usr/sbin/apache2 -k start ??23711 /usr/sbin/apache2 -k start ??23712 /usr/sbin/apache2 -k start ??23713 /usr/sbin/apache2 -k start ??23714 /usr/sbin/apache2 -k start Nov 06 14:46:54 debian11 systemd[1]: Starting The Apache HTTP Server...
Una volta terminato, puoi procedere al passaggio successivo.
Accedi a Taskboard
A questo punto, Taskboard è installato e configurato. Ora apri il tuo browser web e accedi alla Taskboard utilizzando l'URL http://taskboard.example.com . Verrai reindirizzato alla pagina di accesso di Taskboard:
Fornisci nome utente e password amministratore predefiniti admin/admin e fai clic su Accedi pulsante. Dovresti vedere la dashboard della Taskboard nella pagina seguente:
Ora, fai clic su Impostazioni pulsante per modificare la password amministratore predefinita di Taskboard. Dovresti vedere la seguente pagina:
Fornisci la tua nuova password di amministratore e fai clic su Cambia Password pulsante per applicare le modifiche.
Scheda delle applicazioni sicura con Let's Encrypt SSL
Se vuoi proteggere la tua Taskboard con Let's Encrypt SSL, dovrai installare il pacchetto client Certbot e gestire Let's Encrypt SSL per la tua Taskboard.
Puoi installarlo eseguendo il seguente comando:
apt-get install python3-certbot-apache -y
Una volta installato il pacchetto Certbot, esegui il comando seguente per scaricare e installare Let's Encrypt SSL per il tuo sito Web Taskboard.
certbot --apache -d taskboard.example.com
Ti verrà chiesto di fornire la tua email e di accettare i termini del servizio come mostrato di seguito:
Saving debug log to /var/log/letsencrypt/letsencrypt.log Plugins selected: Authenticator standalone, Installer None Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): [email protected] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Please read the Terms of Service at https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must agree in order to register with the ACME server at https://acme-v02.api.letsencrypt.org/directory - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (A)gree/(C)ancel: A - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Would you be willing to share your email address with the Electronic Frontier Foundation, a founding partner of the Let's Encrypt project and the non-profit organization that develops Certbot? We'd like to send you email about our work encrypting the web, EFF news, campaigns, and ways to support digital freedom. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: Y Plugins selected: Authenticator apache, Installer apache Obtaining a new certificate Performing the following challenges: http-01 challenge for taskboard.example.com Enabled Apache rewrite module Waiting for verification... Cleaning up challenges Created an SSL vhost at /etc/apache2/sites-available/taskboard-le-ssl.conf Enabled Apache socache_shmcb module Enabled Apache ssl module Deploying Certificate to VirtualHost /etc/apache2/sites-available/taskboard-le-ssl.conf Enabling available site: /etc/apache2/sites-available/taskboard-le-ssl.conf
Quindi, seleziona se reindirizzare o meno il traffico HTTP su HTTPS come mostrato di seguito:
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: No redirect - Make no further changes to the webserver configuration. 2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for new sites, or if you're confident your site works on HTTPS. You can undo this change by editing your web server's configuration. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2
Digita 2 e premi Invio per installare Let's Encrypt SSL per il tuo sito web:
Enabled Apache rewrite module Redirecting vhost in /etc/apache2/sites-enabled/taskboard.conf to ssl vhost in /etc/apache2/sites-available/taskboard-le-ssl.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Congratulations! You have successfully enabled https://taskboard.example.com You should test your configuration at: https://www.ssllabs.com/ssltest/analyze.html?d=taskboard.example.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/taskboard.example.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/taskboard.example.com/privkey.pem Your cert will expire on 2022-02-7. To obtain a new or tweaked version of this certificate in the future, simply run certbot again with the "certonly" option. To non-interactively renew *all* of your certificates, run "certbot renew" - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le
Ora puoi accedere al tuo sito web in modo sicuro utilizzando l'URL https://taskboard.example.com .
Conclusione
Congratulazioni! hai installato correttamente Taskboard con Apache e Let's Encrypt SSL. Ora puoi creare la tua bacheca, aggiungere utenti, assegnare compiti e gestire tutto dalla dashboard centrale. Sentiti libero di chiedermi se hai domande.