Site icon TechGit

How To Install Redmine on CentOS 7

How To Install Redmine on CentOS 7

In this tutorial, we will show you how to install Redmine on CentOS. Redmine is a free and open source issue tracking and web-based project management application . Redmine is built on Ruby on Rails framework and it is cross-platform and cross-database. This guide should work on other Linux VPS systems as well but was tested and written for CentOS 7 VPS

.

1. Update the system and install necessary packages

yum update
yum install curl zlib-devel curl-devel openssl-devel httpd-devel apr-devel apr-util-devel mysql-devel ftp wget ImageMagick-devel gcc-c++ patch readline readline-devel zlib libyaml-devel libffi-devel make bzip2 autoconf automake libtool bison subversion sqlite-devel

2. Install MariaDB

To install the MariaDB package, run:

yum install mariadb-server

When the installation is complete, run the following command to secure your installation:

mysql_secure_installation

Next, we need to create a database for our Redmine installation:

mysql -uroot -p
MariaDB [(none)]> CREATE DATABASE redmine CHARACTER SET utf8;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'redmine_passwd';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> q

3. Create new user

Create a new system user for Redmine.

sudo adduser --home /opt/redmine --shell /bin/bash --gecos 'Redmine application' redmine
sudo install -d -m 755 -o redmine -g redmine /opt/redmine

Switch to the new redmine user:

sudo su - redmine

4. Install Ruby using RVM

curl -sSL https://rvm.io/mpapis.asc | gpg --import -
curl -sSL https://get.rvm.io | bash -s stable --ruby

To start using RVM run the following commands:

source ~/.rvm/scripts/rvm
rvm --default use ruby

To verify everything is done correctly, use the command ruby --version.
The output should be similar to the following:

ruby --version
ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux]

5. Install Redmine

The following commands will checkout the Redmine source code to the $HOME/redmine directory and create the necessary directories.

cd && svn co http://svn.redmine.org/redmine/branches/3.4-stable redmine
mkdir -p ./redmine/tmp/pids ./redmine/public/plugin_assets

Configure database settings:

cp ./redmine/config/configuration.yml.example ./redmine/config/configuration.yml
cp ./redmine/config/database.yml.example ./redmine/config/database.yml

Open the database.yml file and update username/password

vim nsno
production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: "redmine_passwd"
  encoding: utf8

6. Install Gems

cd /opt/redmine/redmine
echo "gem 'puma'" >> Gemfile.local
echo "gem: --no-ri --no-rdoc" >> ~/.gemrc 
gem install bundler
bundle install --without development test postgresql sqlite

7. Prepare the database

rake generate_secret_token
RAILS_ENV=production rake db:migrate
RAILS_ENV=production REDMINE_LANG=en rake redmine:load_default_data

8. Puma configuration

Create a new configuration file as follows:

vim ./redmine/config/puma.rb
#!/usr/bin/env puma

application_path = '/opt/redmine/redmine'
directory application_path
environment 'production'
daemonize true
pidfile "#{application_path}/tmp/pids/puma.pid"
state_path "#{application_path}/tmp/pids/puma.state"
stdout_redirect "#{application_path}/log/puma.stdout.log", "#{application_path}/log/puma.stderr.log"
bind "'tcp://0.0.0.0:9000"

9. Start Puma

Start the puma server with :

cd /opt/redmine/redmine/ && bundle exec puma --config config/puma.rb

The output should be similar to the following:

Puma starting in single mode...
* Version 3.11.2 (ruby 2.4.1-p111), codename: Love Song
* Min threads: 0, max threads: 16
* Environment: production
* Daemonizing...

Finally your can start your browser and access your new Redmine installation at: http://IP_ADDRESS:9000

That’s it. You have successfully installed Redmine on your Ubuntu VPS. For more information about Redmine, please refer to the Redmine website.

 

Original Article

FacebookTwitterTumblrRedditLinkedInHacker NewsDiggBufferGoogle ClassroomThreadsXINGShare
Exit mobile version