Learn How To Install and Configure TaskBoard on Fedora 30
Table of Contents
- Step 1: Update the system
- Step 2: Install Apache, SQLite, PHP and Git.
- Step 3: Download and install TaskBoard
- Step 4: Configure Apache for TaskBoard
- Step 5: SELinux configuration
If you are using a different system, please check our other tutorials.
How to Install and Configure TaskBoard on Ubuntu 16.04
How to Install and Configure TaskBoard on Debian 9
How to Install and Configure TaskBoard on Ubuntu 18.04
TaskBoard is a free and open source tool that can be used to keep track of things that need to get done. It provides a user friendly web interface and a minimal application for keeping track of tasks. TaskBoard is easily customizable and works on almost any web host.
In this tutorial, I will explain how to install and configure TaskBoard on An ITWeb.Services Fedora 30 server.
- A newly deployed IT Web Services Fedora 30 server instance.
- Root (or sudo user) access to your server via SSH or console
- A static IP address configured on your system, this article will use
192.0.2.2as an example.
NOTE If you’re logged as the root user, you can remove
sudo from all commands shown in this article.
Step 1: Update the system
First, update your system and packages to the latest versions by running the following command:
sudo dnf upgrade -y
Step 2: Install Apache, SQLite, PHP and Git.
Before starting, you will need to install the Apache web server, PHP 7, SQLite database, and other required packages on your server.
You can install these by running the following command:
sudo dnf install -y httpd git sqlite php php-common php-cli php-json php-sqlite3 php-opcache php-mcrypt php-mbstring php-gd php-xml
Make sure Apache is enabled and running:
sudo systemctl enable --now httpd.service
Enable HTTP and HTTPS ports in the firewall daemon:
sudo firewall-cmd --add-service http --add-service https --permanent sudo firewall-cmd --reload
Step 3: Download and install TaskBoard
You can download the latest version of TaskBoard from GitHub using the
git clone https://github.com/kiswa/TaskBoard.git
TaskBoard directory to
sudo mv TaskBoard /var/www/html/
Install the required PHP dependencies using Composer.
cd /var/www/html/TaskBoard sudo ./build/composer.phar self-update sudo ./build/composer.phar install
Set the proper ownership on the
sudo chown -R apache:apache /var/www/html/TaskBoard
Step 4: Configure Apache for TaskBoard
Create a new virtual host configuration file for TaskBoard. You can do this with the following command:
sudo nano /etc/httpd/conf.d/taskboard.conf
Add the following lines:
<VirtualHost *:80> ServerName 192.0.2.2 DocumentRoot /var/www/html/TaskBoard <Directory /var/www/html/TaskBoard> Options -Indexes +FollowSymLinks +MultiViews AllowOverride All Require all granted </Directory> ErrorLog /var/log/httpd/taskboard-error.log CustomLog /var/log/httpd/taskboard-access.log combined </VirtualHost>
Save the file and exit.
Next, reload the Apache service for these changes to take effect:
sudo systemctl reload httpd.service
Step 5: SELinux configuration
Since SELinux is enabled by default on IT Web Services Fedora 30 images, labeling the taskboard directory structure is necessary. Disabling SELinux is another option, but isn’t recommended.
First, add the
httpd_sys_content_t context to the parent TaskBoard Directory, which allows read-only access:
sudo semanage fcontext -a -t "httpd_sys_content_t" "/var/www/html/TaskBoard(/.*)?"
httpd_sys_rw_content_t where write access is needed:
sudo semanage fcontext -a -t "httpd_sys_rw_content_t" "/var/www/html/TaskBoard/api(/.*)?"
Finally, relabel these files to apply changes:
sudo restorecon -Rv /var/www/html/TaskBoard
Now that the installation is complete, you can proceed to access the TaskBoard web interface.
Open your favorite web browser and type the URL
http://192.0.2.2. Log into TaskBoard using default username and password
admin. After successfully logging in, you will be presented with the main dashboard. You should change the admin password immediately after your first login.
Do you need help setting up this on your own service?
Please contact us and we’ll provide you the best possible quote!