Site icon CentLinux

How to install TaskBoard on CentOS 8

Share on Social Media

Learn how to install TaskBoard on CentOS 8 with this step-by-step guide. Set up this open-source task management tool to streamline your project organization and boost productivity. #centlinux #linux #kanban

What is TaskBoard?:

TaskBoard is a Kanban-inspired app for keeping track of things that need to get done. The goal of TaskBoard is to provide a simple and clean interface to a functional and minimal application for keeping track of tasks. It’s not trying to be the next Trello or LeanKit.

What TaskBoard does is make it easy to start keeping track of anything you need to get done. The visual aspect of a board allows for easy status checks, and can be motivating for users who want to move their tasks to the next column.

TaskBoard Features:

TaskBoard Alternatives

If you’re looking for alternatives to Taskboard, which is a simple, open-source project management software, here are several options that cater to various needs, from basic task management to comprehensive project management:

Trello

Asana

Kanboard

Jira

ClickUp

Monday.com

Taiga

Notion

Redmine

Each of these alternatives offers unique features and benefits, so the best choice depends on your specific project management needs and preferences.

Recommended Online Training: Learn Bash Shell in Linux for Beginners

Environment Specification:

We are using a minimal Red Hat Enterprise Linux 8 virtual machine with following specifications.

Update Your Linux Server

Connect with taskboard-01.centlinux.com as root user by using a ssh client.

Make sure you have configured Red Hat subscription, if you want to use their official yum repositories.

Build cache for enabled yum repositories on your Linux server.

# dnf makecache
Updating Subscription Management repositories.
Red Hat Enterprise Linux 8 for x86_64 - BaseOS  3.6 kB/s | 4.1 kB     00:01
Red Hat CodeReady Linux Builder for RHEL 8 x86_ 4.8 kB/s | 4.5 kB     00:00
Red Hat Enterprise Linux 8 for x86_64 - AppStre 4.8 kB/s | 4.5 kB     00:00
Metadata cache created.

Execute following dnf command to update your Linux operating system.

# dnf update -y

The above command may update your Linux Kernel. If it does, then reboot your Linux server with updated Linux Kernel.

# reboot

Verify the version of Linux operating System and Linux Kernel.

# uname -r
4.18.0-348.7.1.el8_5.x86_64

# cat /etc/redhat-release
Red Hat Enterprise Linux release 8.5 (Ootpa)

Install TaskBoard Prerequisites

TaskBoard is written in PHP programming language, therefore, you have to install PHP and a Web Server to deploy TaskBoard application.

Check the available PHP version in default yum repository.

# dnf info php
Updating Subscription Management repositories.
Last metadata expiration check: 0:28:41 ago on Sun 16 Jan 2022 12:06:49 PM EST.
Available Packages
Name         : php
Version      : 7.2.24
Release      : 1.module+el8.2.0+4601+7c76a223
Architecture : x86_64
Size         : 1.5 M
Source       : php-7.2.24-1.module+el8.2.0+4601+7c76a223.src.rpm
Repository   : rhel-8-for-x86_64-appstream-rpms
Summary      : PHP scripting language for creating dynamic web sites
URL          : http://www.php.net/
License      : PHP and Zend and BSD and MIT and ASL 1.0
Description  : PHP is an HTML-embedded scripting language. PHP attempts to make
             : it easy for developers to write dynamically generated web pages.
             : PHP also offers built-in database integration for several
             : commercial and non-commercial database management systems, so
             : writing a database-enabled webpage with PHP is fairly simple. The
             : most common use of PHP coding is probably as a replacement for
             : CGI scripts.
             :
             : The php package contains the module (often referred to as
             : mod_php) which adds support for the PHP language to Apache HTTP
             : Server.

Check the list of other PHP modules in yum repository.

# dnf module list php
Updating Subscription Management repositories.
Last metadata expiration check: 0:28:57 ago on Sun 16 Jan 2022 12:06:49 PM EST.
Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)
Name      Stream       Profiles                       Summary
php       7.2 [d]      common [d], devel, minimal     PHP scripting language
php       7.3          common [d], devel, minimal     PHP scripting language
php       7.4          common [d], devel, minimal     PHP scripting language

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

Enable the latest available version of PHP by using following command.

# dnf module enable php:7.4
Updating Subscription Management repositories.
Last metadata expiration check: 0:29:30 ago on Sun 16 Jan 2022 12:06:49 PM EST.
Dependencies resolved.
================================================================================
 Package           Architecture     Version             Repository         Size
================================================================================
Enabling module streams:
 httpd                              2.4
 nginx                              1.14
 php                                7.4

Transaction Summary
================================================================================

Is this ok [y/N]: y
Complete!

Again check the version of available PHP.

# dnf info php
Updating Subscription Management repositories.
Last metadata expiration check: 0:30:14 ago on Sun 16 Jan 2022 12:06:49 PM EST.
Available Packages
Name         : php
Version      : 7.4.19
Release      : 1.module+el8.5.0+11143+cc873159
Architecture : x86_64
Size         : 1.5 M
Source       : php-7.4.19-1.module+el8.5.0+11143+cc873159.src.rpm
Repository   : rhel-8-for-x86_64-appstream-rpms
Summary      : PHP scripting language for creating dynamic web sites
URL          : http://www.php.net/
License      : PHP and Zend and BSD and MIT and ASL 1.0 and NCSA
Description  : PHP is an HTML-embedded scripting language. PHP attempts to make
             : it easy for developers to write dynamically generated web pages.
             : PHP also offers built-in database integration for several
             : commercial and non-commercial database management systems, so
             : writing a database-enabled webpage with PHP is fairly simple. The
             : most common use of PHP coding is probably as a replacement for
             : CGI scripts.
             :
             : The php package contains the module (often referred to as
             : mod_php) which adds support for the PHP language to Apache HTTP
             : Server when running in prefork mode.

Now, PHP 7.4 is available to install on your Linux server.

Install PHP, Apache web server, SQLite database and other prerequisites as follows.

# dnf install -y httpd php sqlite wget unzip policycoreutils-python-utils

Enable and start Apache server.

# systemctl enable --now httpd
Created symlink /etc/systemd/system/multi-user.target.wants/httpd.service → /usr/lib/systemd/system/httpd.service.

Install TaskBoard on CentOS 8

TaskBoard is a free and open source software. Thus, it is available to download at their official website and GitHub.

You can download TaskBoard from GitHub.

Copy the URL of your required TaskBoard version and use wget command with it to download straight from the Linux CLI.

# wget https://github.com/kiswa/TaskBoard/releases/download/v1.0.2/TaskBoard_v1.0.2.zip
--2022-01-16 12:41:19--  https://github.com/kiswa/TaskBoard/releases/download/v1.0.2/TaskBoard_v1.0.2.zip
Resolving github.com (github.com)... 13.234.176.102
Connecting to github.com (github.com)|13.234.176.102|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 4018464 (3.8M) [application/octet-stream]
Saving to: ‘TaskBoard_v1.0.2.zip’

TaskBoard_v1.0.2.zi 100%[===================>]   3.83M  1.14MB/s    in 3.4s

Use unzip command to extract downloaded TaskBoard software into Apache document-root directory.

# unzip TaskBoard_v1.0.2.zip -d /var/www/html/taskboard

Adjust File permissions and ownership for extracted TaskBoard software files.

# chown -R apache:apache /var/www/html/taskboard
# chmod -R 775 /var/www/html/taskboard

Edit .htaccess file by using vim text editor.

# vi /var/www/html/taskboard/api/.htaccess

Locate and comment following four directives in this file.

#php_value upload_max_filesize 80M
#php_value post_max_size 100M
#php_value file_uploads On
#php_value memory_limit 256M

Create a Apache configuration file to deploy TaskBoard application. You can use vim text editor again.

# vi /etc/httpd/conf.d/taskboard.conf

Add following directives in this file.

<VirtualHost *:80>
    ServerAdmin admin@centlinux.com
    DocumentRoot "/var/www/html/taskboard"
    ServerName taskboard-01.centlinux.com
    <Directory "/var/www/html/taskboard">
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
    ErrorLog "/var/log/httpd/taskboard-error_log"
    CustomLog "/var/log/httpd/taskboard-access_log" combined
</VirtualHost>

Test Apache configuration for any possible Syntax error.

# httpd -t
Syntax OK

Restart Apache service by using following command.

# systemctl restart httpd.service

Linux Firewall Configuration

To make your TaskBoard application accessible across the network, you have to Allow http service in Linux firewall.

# firewall-cmd --permanent --add-service=http
success
# firewall-cmd --reload
success

Configure SELinux for TaskBoard

For proper functioning of TaskBoard application, you have to allow write privileges in /var/www/html/taskboard/api directory.

Apache user already has the write privilege on api directory. But the SELinux is blocking it.

You can either Disable SELinux (not recommended) or you can add a SELinux fcontext to allow Apache user to write in this directory.

# semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/taskboard/api(/.*)?'
# restorecon -RF /var/www/html/taskboard/api

Access TaskBoard: Project Management Software

Open URL http://taskboard-01.centlinux.com in a web browser.

Taskboard Login

Login as TaskBoard default user/password i.e. admin/admin.

Taskboard Boards

You have reached at the dashboard of TaskBoard application.

If you are new to Linux and facing difficulty in working at Linux Bash prompt. We recommend that, you should read The Linux Command Line, 2nd Edition: A Complete Introduction by William Shotts.

Final Thoughts

In conclusion, installing TaskBoard on CentOS 8 is a straightforward process that can greatly enhance your task management and project organization. By following the steps provided, you can quickly set up this open-source tool and start managing your tasks more efficiently.

If you need assistance with installing TaskBoard or other Linux-related tasks, I’m here to help. Visit my Fiverr profile to explore my services. I offer expert support for installation, configuration, troubleshooting, and optimization of Linux systems. Let’s work together to ensure your project management setup is seamless and effective.

Exit mobile version