How to Install TaskBoard on CentOS 7
TaskBoard is a free and open source application to keep a track of the tasks that needs to be done. It requires minimal dependencies to work. Database is stored in SQLite which eliminates the requirement of MySQL or any other database server.
Prerequisite
- Minimal CentOS 7 server.
- Root privileges. This guide is written as the root user, if you are logged in as sudo user, run sudo -i.
Update Base System
Before installing any package it is recommended that you update the packages and repository using the following command.
yum -y update
Once the system is updated, you can proceed further to install the dependencies required for TaskBoard.
Install Apache
TaskBoard needs several dependencies to work such as Apache web server to serve the website. Install Apache web server by running the following command.
yum -y install httpd
Now start Apache web server and enable it to start at boot time using the following command.
systemctl start httpd
systemctl enable httpd
Install PHP and SQLite
TaskBoard is written in PHP, hence you will need to install PHP as well. In this tutorial we will install PHP 7. Installing the latest version of PHP will ensure that we get maximum performance and security.
The default YUM repository of CentOS does not have PHP 7.1 included, hence you will need to add the Webtatic repository in your system. Webtatic repository requires EPEL repository to work. Run the following command to install EPEL repository.
yum -y install epel-release
yum -y update
Type the commands to install Webtatic repository.
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum -y update
Type the following command to install PHP 7.1 along with all the required dependencies.
yum -y install php71w php71w-json php71w-gd php71w-cli php71w-readline php71w-sqlite3
To check if PHP is installed successfully, you can run:
php -v
You should get output similar to this.
[root@centos ~]# php -v PHP 7.1.7 (cli) (built: Jul 6 2017 12:10:28) ( NTS ) Copyright (c) 1997-2017 The PHP Group Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
TaskBaord uses SQLite to store the database. You can install SQLite by running the following command.
yum -y install sqlite
Once the dependencies are installed, you can proceed further to install TaskBoard.
Install TaskBoard
Switch to /var/www/ and download the latest version of TaskBaord archive by running the following commands.
cd /var/www/
wget https://github.com/kiswa/TaskBoard/archive/master.zip
Extract the archive by running:
unzip master.zip
If you do not have unzip installed on your server, run yum -y install unzip.
The above command will extract the archive to TaskBoard-master directory. You can rename the directory to taskboard by running:
mv TaskBoard-master/ taskboard
Now install the required PHP dependencies through Composer by running the following command.
./build/composer.phar install
Once all the dependencies are installed, provide the ownership of the files t Apache web server user by running:
chown -R apache:apache /var/www/taskboard
Modify Firewall and Create VHosts
You may also need to allow HTTP traffic on port 80 through the firewall if you are running one. Run the following commands for same.
firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --reload
Now create a virtual host for the TaskBoard application. Run the following command for same.
nano /etc/httpd/conf.d/board.yourdomain.com.conf
Paste the following lines into the file.
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot "/var/www/taskboard" ServerName board.yourdomain.com ServerAlias www.board.yourdomain.com <Directory "/var/www/taskboard"> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> ErrorLog "/var/log/httpd/board.yourdomain.com-error_log" CustomLog "/var/log/httpd/board.yourdomain.com-access_log" combined </VirtualHost>
Replace board.yourdomain.com with any domain or subdomain you want to use to access the application. Save the file and exit from the editor. Run the following command to restart your Apache server.
systemctl restart httpd
Now complete the installation using a web browser, go to the following link using your favourite web browser.
http://board.yourdomain.com
You will be welcomed by the following page.
Login using the default username admin and default password admin. Once you are logged in, you will need to change your administrator password. You can do this by going to Settings page.
You can also create a new board from settings page.
Conclusion
In this tutorial, we have installed TaskBoard on CentOS 7. You can navigate through the application to explore the features provided by TaskBoard.