This is a quick guide on how to setup ChiliProject (or redmine) on CentOS 5.6. This is a followup to this post, with some different, slightly better methodology. I’ll likely be iterating on this guide a few times, so check the blog for updates before launching into this. At the time of writing, ChiliProject v1.4.0 is the current stable release, once v2.0.0 comes out, some of this will not apply.
Once again we’re going to go with the tried and trusted:
- Ruby Enterprise Edition (REE)
This time we’re going to install REE via rvm and put chiliproject into it’s own user.
Enable the EPEL repository, so we can grab slightly more up-to-date versions of some packages, as well as subversion and git:
su -c 'rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm'
Same as last time lets install httpd, mysql and the necessary build libraries via the yum repos:
yum install gcc zlib zlib-devel curl curl-devel expat-devel gettext-devel httpd httpd-devel apr-devel apr-util-devel mysql mysql-server mysql-devel openssl openssl-devel make gcc-c++ patch readline-devel ImageMagick ImageMagick-devel libffi-devel libyaml-devel sudo git subversion
Start httpd and mysql and enable them to run on boot:
/etc/init.d/httpd start /sbin/chkconfig httpd on /etc/init.d/mysqld start /sbin/chkconfig mysqld on
Let’s create a user that we are going to put chiliproject under, in this tutorial this user will be called chili.
adduser chili passwd chili
Depending on your long-term plans I would suggest adding the user chili to /etc/sudoers (using visudo) so you can later disable root logins for a more secure environment. This tutorial will assume you have done so, and at this point are logged in as the chili user. If you choose not to do this, this tutorial will still work just fine executing these as root.
In this example we are going to install just a single version of ruby to use just for our chili user. The following should be done as the chili user, unless otherwise mentioned.
bash < <(curl -s https://rvm.beginrescueend.com/install/rvm)
Add this line to the bottom of .bash_profile
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"
Log out and log back in.
Ensure rvm is installed and running as a function
type rvm | head -1
Update and reload rvm (just in case)rvm get head rvm reload
Install Ruby Enterprise Edition and set it as the default, this may take some time depending on your hardware.rvm install ree rvm --default use ree
Install rails version 2.3.5, the mysql gem, and the correct version of the i18n gemgem install rails --version 2.3.5 gem install mysql gem install -v=0.4.2 i18n
These are some optional gems you may want to install. rmagick will give you pretty graphs and ruby-openid will enable the ability to activate openid logins.gem install rmagick -v 1.15.13 --disable-htmldoc gem install ruby-openid
Install passenger. Follow the prompts and read the last part of the output instructing you to copy-paste some lines into your /etc/httpd/conf/httpd.confgem install passenger rvmsudo passenger-install-apache2-module
While we are editing httpd.conf, let’s go ahead and create a virtualhost entry, edit as neccessary:<VirtualHost *:80> ServerName www.demo.chiliproject.org ServerAlias demo.chiliproject.org DocumentRoot /home/chili/chiliproject/public <Directory /home/chili/chiliproject/public> AllowOverride all Options -MultiViews </Directory> </VirtualHost>
Finally, let’s download and install chiliproject (or redmine)to the location in our virtualhost mentioned above. You can simply follow the install guide from this point on, but I will reproduce the commands I do below for your convenience:cd /home/chili git clone git://github.com/chiliproject/chiliproject.git cd chiliproject/ git checkout stable mysql create database chiliproject character set utf8; create user 'chiliproject'@'localhost' identified by 'my_password'; grant all privileges on chiliproject.* to 'chiliproject'@'localhost'; quit cp config/database.yml.example config/database.yml vim config/database.yml cp config/configuration.yml.example config/configuration.yml vim config/configuration.yml rake generate_session_store RAILS_ENV=production rake db:migrate RAILS_ENV=production rake redmine:load_default_data sudo /etc/init.d/httpd restart
If all went well, you should be able to browse to your successful chiliproject installation at this time! If you need help, hop into the Chiliproject IRC Channel and I’m usually around, and there are many other helpful people there just waiting to help you.