Kanboard est un logiciel de gestion de projet open source qui vous aide à gérer votre projet et à visualiser les détails de votre travail. Il offre une interface Web facile à utiliser qui vous permet de gérer facilement votre projet. Vous pouvez également intégrer kanboard à des programmes externes à l'aide de plugins.
Dans cet article nous allons voir comment installer kanboard/Kanban sur CentOS 8.
Tout d'abord, vous installerez les extensions Nginx, MariaDB, PHP et PHP. Vous pouvez tous les installer à l'aide de la commande unique suivante :
dnf install nginx mariadb-server php php-fpm php-mbstring php-cli php-json php-opcache php-zip php-xml php-gd php-ldap php-mysqli php-sqlite3 php-json php-dom -y

Une fois les dépendances installées, démarrez-les et activez-les afin qu'elles puissent démarrer automatiquement après le redémarrage du système.
systemctl start mariadb.service
systemctl enable mariadb.service
systemctl status mariadb.service

systemctl start nginx.service
systemctl enable nginx.service
systemctl status nginx.service

systemctl start php-fpm.service
systemctl enable php-fpm.service
systemctl status php-fpm.service

Ensuite, nous allons éditer le fichier de configuration php-fpm et remplacer l'utilisateur et le groupe d'Apache par nginx.
nano /etc/php-fpm.d/www.conf

enregistrer et quitter le fichier. Redémarrez le service php-fpm.
systemctl restart php-fpm.service
Kanban utilise MariaDB comme base de données, nous allons donc configurer MariaDB pour Kanban en conséquence.
mysql -u root -p
Maintenant, créez une base de données et un utilisateur pour le kanban à l'aide des commandes suivantes :
CREATE DATABASE kanboard CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
GRANT ALL PRIVILEGES ON kanboard.* TO 'kanboard'@'localhost' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
EXIT;

Télécharger Kanban :
Maintenant, téléchargez la dernière version de kanban à l'aide de la commande suivante :
wget https://github.com/kanboard/kanboard/archive/v1.2.18.tar.gz

Extrayez le fichier téléchargé.
tar -xvzf v1.2.18.tar.gz
déplacez le répertoire extrait vers le répertoire racine Web Nginx.
mv kanboard-1.2.18 /var/www/html/kanboard
configurer le kanban.
cd /var/www/html/kanboard
cp config.default.php config.php
nano config.php
modifiez les lignes suivantes selon votre base de données :
// Database driver: sqlite, mysql or postgres (sqlite by default)
define('DB_DRIVER', 'mysql');
// Mysql/Postgres username
define('DB_USERNAME', 'kanboard');
// Mysql/Postgres password
define('DB_PASSWORD', 'password');
// Mysql/Postgres hostname
define('DB_HOSTNAME', 'localhost');
// Mysql/Postgres database name
define('DB_NAME', 'kanboard');

enregistrez et quittez le fichier.
changer la propriété du fichier en nginx.
chown -R nginx:nginx /var/www/html/kanboard
chmod -R 775 /var/www/html/kanboard
Configurer Nginx pour Kanban :
Créez un fichier de configuration d'hôte virtuel Nginx pour héberger le kanban. Utilisez la commande suivante pour ce faire :
nano /etc/nginx/conf.d/kanboard.conf
ajoutez les lignes suivantes :
server {
listen 80;
server_name 192.168.189.128;
index index.php;
root /var/www/html/kanboard;
client_max_body_size 32M;
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_index index.php;
include fastcgi_params;
}
location ~* ^.+\.(log|sqlite)$ {
return 404;
}
location ~ /\.ht {
return 404;
}
location ~* ^.+\.(ico|jpg|gif|png|css|js|svg|eot|ttf|woff|woff2|otf)$ {
log_not_found off;
expires 7d;
etag on;
}
gzip on;
gzip_comp_level 3;
gzip_disable "msie6";
gzip_vary on;
gzip_types
text/javascript
application/javascript
application/json
text/xml
application/xml
application/rss+xml
text/css
text/plain;
}
enregistrez et quittez le fichier.
vérifier les configurations saisies dans le fichier mentionné ci-dessus.
nginx -t

Redémarrez nginx pour appliquer les modifications ci-dessus.
systemctl restart nginx.service
Vous devrez configurer SELinux pour Kanban. Vous pouvez configurer à l'aide de la commande suivante :
setsebool httpd_can_network_connect on -P
chcon -R -u system_u -t httpd_sys_rw_content_t -r object_r /var/www/html/kanboard
Autorisez les ports 80 et 443 via le pare-feu avec la commande suivante :
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload
Ouvrez votre navigateur Web et accédez au tableau de bord kanban à l'aide de l'URL http://192.168.189.128. Vous serez redirigé vers la page de connexion de l'administrateur Kanban :

Entrez admin comme nom d'utilisateur et mot de passe pour accéder au tableau de bord Kanban.
