HowTo install Redmine on CentOS 5 » History » Version 28

Version 27 (Yu Kobayashi, 2012-02-13 08:09) → Version 28/115 (Nick Shel, 2012-03-05 09:01)

h1. HowTo install Redmine on CentOS 5 or 6

{{>toc}}

h2. Assumptions

* Apache is up and running
* Apache has previously been used and works quite well
* MySQL is up and running
* MySQL has previously been used and works quite well
* Your are logged as root
* The next steps are done successively without errors

h2. Steps to take

h3. Install gem and passenger dependencies

<pre>
yum -y install zlib-devel curl-devel openssl-devel httpd-devel apr-devel apr-util-devel mysql-devel
</pre>



h3. Get Ruby

<pre>
# Create the directory where you will store the Downloads
mkdir ~/Downloads # This can be any directory.

# Change to directory where you will store the download
cd ~/Downloads # This can be any directory.

# FTP to where you will download ruby from.
YOUR FOLDER OF CHOICE
# When asked to login use user/password of anonymous/anonymous
ftp ftp.ruby-lang.org
Name (ftp.ruby-lang.org:root): anonymous

Password: anonymous

ftp>
cd /pub/ruby
ftp> get ruby-1.8.7-pXXX.tar.gz ruby-1.8.7.pXXX.tar.gz
ftp> quit

# You have now downloaded ruby and need to untar it
tar zxvf ruby-1.8.7-pXXX.tar.gz

# Compile ruby
ruby-1.8.7.pXXX.tar.gz
cd ruby-1.8.7-pXXX ruby-1.8.7.pXXX
./configure
make
make install

# Verify ruby installation

ruby -v
which ruby

# Change back into your downloads directory

cd ..
</pre>



h3. Get Gems 1.4.2 (does not work with Gems 1.5)

<pre>
wget http://production.cf.rubygems.org/rubygems/rubygems-1.4.2.tgz
tar zxvf rubygems-1.4.2.tgz
cd rubygems-1.4.2
ruby setup.rb
gem -v
which gem
cd ..
</pre>

h3. Install Passenger (requires gcc)

<pre>
gem install passenger
passenger-install-apache2-module
</pre>

An alternate method is to install mod_passenger RPM for Apache from the following location:
http://passenger.stealthymonkeys.com/

RHEL/CentOS 5
<pre>
rpm -Uvh http://passenger.stealthymonkeys.com/rhel/5/passenger-release.noarch.rpm
yum install mod_passenger
</pre>

RHEL/CentOS 6
<pre>
rpm --import http://passenger.stealthymonkeys.com/RPM-GPG-KEY-stealthymonkeys.asc
yum install http://passenger.stealthymonkeys.com/rhel/6/passenger-release.noarch.rpm
yum install mod_passenger
</pre>

h3. Restart Apache

<pre>service httpd restart</pre>

h3. Download Redmine

Download page: http://rubyforge.org/frs/?group_id=1850

<pre>
wget http://rubyforge.org/frs/download.php/75597/redmine-1.3.0.tar.gz # GET LATEST VERSION ON RUBYFORGE
tar zxvf redmine-1.3.0.tar.gz
</pre>

h3. Copy the folder to its HTTP document root folder

<pre>cp -av redmine-1.3.0/* /var/www/redmine</pre>

h3. Configure Apache to host the documents

more information can be found here: [[HowTo configure Apache to run Redmine]]

h3. Install Bundler

<pre>gem install bundler</pre>

h3. Add the Bundler Boot and preinitializer code

For more info go to the "Bundler site":http://gembundler.com/.

h3. Create the Gemfile and register these gems in it

<pre>vi /var/www/redmine/Gemfile</pre>

<pre>
# file: /var/www/redmine/Gemfile
source "http://rubygems.org"
gem "rake", "0.8.3"
gem "rack", "1.1.0"
gem "i18n", "0.4.2"
gem "rubytree", "0.5.2", :require => "tree"
gem "RedCloth", "~>4.2.3", :require => "redcloth" # for CodeRay
gem "mysql"
gem "coderay", "~>0.9.7"
</pre>

<pre>bundle install</pre>

h3. Create the Redmine MySQL database

<pre>
yum install mysql-server
chkconfig mysqld on
service mysqld start
/usr/bin/mysql_secure_installation
</pre>

> For MySQL:
> start the mysql client (@mysql -u root -p@) and enter the following commands
> > <pre>create database redmine character set utf8;
create user 'redmine'@'localhost' identified by 'my_password';
grant all privileges on redmine.* to 'redmine'@'localhost'; </pre>

> For versions of MySQL prior to 5.0.2 - skip the 'create user' step and instead:

> > <pre> grant all privileges on redmine.* to 'redmine'@'localhost' identified by 'my_password';</pre>

h3. Configure /var/www/redmine/config/database.yml (rename database.yml.example)

h3. Set the production environment (optional)

Uncomment the following line in file redmine/config/environment.rb:

<pre>ENV['RAILS_ENV'] ||= 'production'</pre>

h3. Generate the session store

<pre>RAILS_ENV=production bundle exec rake generate_session_store</pre>

h3. Migrate the database models

<pre>RAILS_ENV=production bundle exec rake db:migrate</pre>

h3. Load default data (optional)

<pre>RAILS_ENV=production bundle exec rake redmine:load_default_data</pre>

Follow instructions.

h3. Rename dispatch CGI files in /var/www/redmine/public/

<pre>
mv dispatch.cgi.example dispatch.cgi
mv dispatch.fcgi.example dispatch.fcgi
mv dispatch.rb.example dispatch.rb
</pre>

h3. Edit .htaccess file for CGI dispatch configuration

<pre>
mv htaccess.fcgi.example .htaccess
</pre>

h3. Chown and Chmod files for read/write access for the Apache user

<pre>
cd ..
chown -R apache:apache redmine-1.x
chmod -R 755 redmine-1.x
</pre>

h3. Redmine should be fully installed now and fully usable

Enjoy!