Project

General

Profile

RedmineAppUnderPassenger

These instruction need to be more complete and reviewed for missing steps. References to web pages and books need
to be added. The commands for updating the gem system area missing. The configuration of the email tool is
also missing. The filling out of the rails config/database.xml is missing.

Check the instructions on the redmine site to make sure they are still compatible with the list below.

Install the following:

  1. ruby, we are using: "ruby 1.8.7 (2008-08-11 patchlevel 72) [x86_64-linux]"
  2. the gem system if you have not done so yet
  3. redmine, the config/environment.rb file should indicate the version of rails you need
  4. rails, we are currently using 2.1.2 to drive redmine
  5. mysql and sqlite3-ruby gems if they are not already installed (versions 2.7 and 1.2.4)
  6. the passenger gem - we are using running the 2.0.6 version under Apache, although versions 2.2.2 and 2.2.0 are available.

To make things easier to administer, we created a new account called redmine and group apps. The redmine application
has installed under the home directory of this account.

We use mysql as the underlying database for redmine. The mysql version is 5.1. If you choose to do this, you
will need to create databases and accounts under mysql for ths application.

# create the database and the access account
# log into the mysql database
create database redmine_prod;
grant all privileges on redmine_prod.* to 'redmine'@'localhost' identified by 'mypass' with grant option;
grant all privileges on redmine_prod.* to 'redmine'@'oink.fnal.gov' identified by 'mypass' with grant option;
grant all privileges on redmine_prod.* to 'redmine'@'%' identified by 'mypass' with grant option;

Go to the rails application and run "rake db:migrate" to create the schema.

Now we need to set up Apache. We use SSL to access the redmine site, so you will need to get that
all configured first. Since SVN is involved in redmine, make sure you set up https access or have a repository
available for access. To set up passenger, go to the conf/extra directory of apache and create a new
configuration file called httpd-passenger.conf. Here is our contents:

LoadModule passenger_module /usr/local/lib/ruby/gems/1.8/gems/passenger-2.0.6/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/1.8/gems/passenger-2.0.6
PassengerRuby /usr/local/bin/ruby
PassengerLogLevel 0
PassengerDefaultUser redmine

The options reflect our installation of ruby and the user account "redmine".
If you also support an SVN repository here, you should add a redmine user there so that the application
can have a way to access this repository. Make sure you include the -passenger.conf file in the main
http.conf file.

Go to the extra/httpd-vhosts.conf file. In the virtualhost entry for SLL (port 443), enter
configuration for the redmine application:

 RailsBaseURI /redmine
 RailsEnv development

Go to the htdocs directory and add a symbolic link to the redmine application:

cd ...../htdocs
ln -s /home/redmine/redmine-0.8/public redmine

Create another new file in the conf directory called extra/httpd-railsapp.conf with contents
that look like this. Note that this is not the instructions for using kerberos.

<Location /redmine>
    SSLRequireSSL
    Options None
    Order   allow,deny
    Allow   from all
    Deny    from 72.30
</Location>

You should now be ready to test. Restart the web server. Go to https://yourmachine.org/redmine and
see what happens.