How To Install Redmine on CentOS 8

Install Redmine on CentOS 8

In this tutorial we will show you how to install Redmine on CentOS 8. For those of you who didn’t know, Redmine is a project management web app that allows users to manage projects flexibly while offering robust monitoring tools and a broad library of plug-ins. This free and open source solution offers a substitute for paid job management tools and contains support for wikis, forums, calendars, and information visualization programs.

This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo’ to the commands to get root privileges. I will show you through the step by step installation the Redmine project management web app on a CentOS 8 server.

Install Redmine on CentOS 8

Step 1. First let’s start by ensuring your system is up-to-date.

Step 2. Create Redmine System User.

We’ll create a user who will be the owner of the application, and we’ll give it temporary sudo access:

Step 3. Installing Apache HTTP Server.

To install Apache HTTP server on CentOS 8:

Then, start Apache services:

Next, since we will be using Apache as our HTTP server, add Apache to Redmine group:

Step 4. Installing MariaDB server.

To install MariaDB 10.4, you need to install its YUM repository.

Next, install MariaDB YUM repository signing key:

Install MariaDB using following command:

Now start the mysqld service using systemctl command as shown below:

By default, MariaDB is not hardened. You can secure MariaDB using the mysql_secure_installation script. You should read and below each steps carefully which will set root password, remove anonymous users, disallow remote root login, and remove the test database and access to secure MySQL.

Configure it like this:

Next we will need to log in to the MariaDB console and create a database for the Redmine. Run the following command:

This will prompt you for a password, so enter your MySQL root password and hit Enter. Once you are logged in to your database server you need to create a database for Redmine installation:

Step 5. Download and Install Redmine on CentOS.

  • Install Required Dependencies

First install EPEL and enable the PowerTools repositories:

Next, proceed to install the dependencies:

Redmine also requires Ruby interpreter which can be installed by executing the command:

Now run following command as shown below to check Ruby version:

  • Install Redmine on CentOS

First, download the latest version of Redmine, at the moment of writing this article it is version 4.0:

Extract the Redemine tarball to Redmine user’s home directory:

Next, change the current working directory and the example configuration files:

Rename the sample Redmine configuration.

Rename the sample dispatch CGI configuration file under the public folder as shown below;

Rename the sample the database configuration file.

Next, open the database configure file for editing and and configure:

Install Ruby Dependencies:

Next, Install Bundler for managing gem dependencies:

Once the bundler installation is done, you can now install required gems dependencies:

Generate Secret Session Token:

Create Database Schema Objects:

Once the database migration is done, insert default configuration data into the database by executing:

Configure FileSystem Permissions:

Step 6. Configure Firewall for Redmine.

Open port 3000/tcp on firewalld. Run the commands below as privileged user:

Step 7. Testing Redmine Installation

You can test Redmine using WEBrick by executing the command below:

Then, you can now access Redmine via the browser using the address, http://Server-IP:3000/. Click sign in and use the credentials, User: admin and Password: admin to login.

Step 8. Configure Apache for Redmine.

Switch to Redmine user created above to install the Phusion Passenger Apache module:

Next, install Passenger Apache module. Replace the version of the Passenger accordingly:

Once the module compilation is done, you are provided with how configure the module on Apache:

Before you can press Enter to complete the Module installation and setup, open a new login session as privileged user and edit the Apache configuration file:

Then, create Apache virtual host configuration for Redmine with the following content:

Verify Apache configuration syntax:

Once the installation and setup of Apache Passenger module is complete, restart Apache:

Step 9. Accessing Redmine from Browser.

You should be able to access Redmine web interface now:

Congratulation’s! You have successfully installed Redmine. Thanks for using this tutorial for installing Redmine project management web app on CentOS 8 systems. For additional help or useful information, we recommend you to check the official Redmine website.

VPS Manage Service Offer
If you don’t have time to do all of this stuff, or if this is not your area of expertise, we offer a service to do “VPS Manage Service Offer”, starting from $10 (Paypal payment). Please contact us to get a best deal!