# Kanboard (nginx, mariadb, php7.4) ![](logo.jpg) 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](https://github.com/kanboard/kanboard/releases) 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: ![](1.png) 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](https://www.duckdns.org/) ![](2.png) Test if the domain name correctly points to your server's ip address: ![](3.png) 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 ![](4.png) nano /etc/nginx/conf.d/kanboard.conf next just change the domain name to yours: ![](5.png) 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: ![](6.png) The default credentials are **admin:admin** , you can change them here: ![](7.png) ![](8.png) Next just create a new project: ![](9.png) ![](10.png) Then add tasks to it: ![](11.png) You can easily drag and drop tasks with your mouse around when you're finished with them ![](12.png)