Previous Page

nihilist - 16 / 10 / 2020

Kanboard (nginx, mariadb, php7.4)

Rent a VPS with debian 10+ (or just run it yourself, but make sure it is correctly port forwarded so that public ip points to the machine like a vps).

Once you have ssh'd into your debian server as root, we can start:

Initial Setup


apt update -y && apt upgrade -y
apt install nginx socat mariadb-server git php8.2-{fpm,mbstring,cli,opcache,zip,xml,gd,ldap,mysql,sqlite3} -y 
mysql -u root -p


CREATE DATABASE kanboard CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;;
GRANT ALL PRIVILEGES ON kanboard.* TO 'kanboard'@'localhost' IDENTIFIED BY 'StrongPassword';
FLUSH PRIVILEGES;
\q

Next you'll need to get the latest version of kanboard, currently it is version 1.2.16


export VER=1.2.16
wget https://github.com/kanboard/kanboard/archive/v${VER}.tar.gz
tar xvf v${VER}.tar.gz
rm -f v${VER}.tar.gz
mv kanboard-${VER}/ /var/www/kanboard

Next we configure config.php:


wget https://blog.nowhere.moe/servers/kanboard/config.php -O /var/www/kanboard/config.php
nano /var/www/kanboard/config.php

Edit the config file if you want, the important part being the following:

Then hit CTRL+S to save and CTRL+X to exit nano.

Configuring NGINX




chown -R www-data:www-data /var/www/kanboard
wget https://blog.nowhere.moe/servers/kanboard/kanboard.conf -O /etc/nginx/sites-available/kanboard.conf
rm /etc/nginx/sites-available/default 
rm /etc/nginx/sites-enabled/default 
ln -s /etc/nginx/sites-available/kanboard.conf /etc/nginx/sites-enabled/kanboard.conf

Now for this part we need a domain name, if you want the a free alternative just use duckdns.org

Test if the domain name correctly points to your server's ip address:

Once that's done use acme.sh to get your free letsencrypt certificate:


wget -O -  https://get.acme.sh | sh
source ~/.bashrc

systemctl stop nginx 
acme.sh --issue --standalone -d ech2.duckdns.org -k 4096
systemctl start nginx 

nginx -t


nano /etc/nginx/conf.d/kanboard.conf

next just change the domain name to yours:

hit ctrl+S and ctrl+X when you're done, and then reload the nginx configuration:


systemctl restart php7.4-fpm nginx mysql

BONUS: self registration plugin for public usage:


	cd /var/www/kanboard/plugins
	git clone https://github.com/kanboard/plugin-registration
	mv plugin-registration Registration
	chown -R www-data:www-data /var/www/kanboard

Configuring Kanboard



Once that's done just get to your website:

The default credentials are admin:admin, you can change them here:

Next just create a new project:

Then add tasks to it:

You can easily drag and drop tasks with your mouse around when you're finished with them

Nihilism

Until there is Nothing left.



Creative Commons Zero: No Rights Reserved

About nihilist

Donate XMR: 8AUYjhQeG3D5aodJDtqG499N5jXXM71gYKD8LgSsFB9BUV1o7muLv3DXHoydRTK4SZaaUBq4EAUqpZHLrX2VZLH71Jrd9k8


Contact: nihilist@contact.nowhere.moe (PGP)