This is an old revision of the document!
Table of Contents
Redmine Project Management
Redmine is a bug tracking, source code and project management web application (similar to Trac).
- Official install guide: http://www.redmine.org/wiki/redmine/RedmineInstall
- Unofficial install guide: http://library.linode.com/development/project-management/redmine/ubuntu-9.10
- Arch Linux wiki guide: http://wiki.archlinux.org/index.php/Redmine_setup
Install dependencies
apt-get
$ sudo apt-get install build-essential ruby rubygems libopenssl-ruby libsqlite3-dev
Ruby gems
$ sudo gem install rails -v=2.3.5 $ sudo gem install sqlite3 $ sudo gem install fastthread $ sudo gem install -v=0.4.2 i18n
Configure Redmine
Download and unzip the latest stable tarball:
$ wget http://rubyforge.org/frs/download.php/70486/redmine-0.9.4.tar.gz $ tar zxf redmine-0.9.4.tar.gz
Move redmine
Move redmine somewhere universal, outside of your home folder. We will configure Apache to serve redmine from this location:
$ sudo mv redmine-0.9.4 /opt/ $ cd /opt/redmine-0.9.4
Configure the database
We can either use MySQL or SQLite. SQLite has less overhead, and I'm not sure if it's any slower so we'll use that.
Edit config/database.yml:
production: adapter: sqlite3 dbfile: db/redmine.db
Initialize the database
$ chmod 600 config/database.yml $ rake rake generate_session_store $ RAILS_ENV=production rake db:migrate $ RAILS_ENV=production rake redmine:load_default_data
Test the server
Before we can use Redmine with Apache, we have to make sure the installation worked fine. Use the built-in webserver to test first:
$ script/server -e production
If you get an error about not finding ruby, make sure the ruby version in the script/server
script is correct.
Navigate to http://ip:3000 to see Redmine working. The default username and password are "admin"
Configure Apache
Install Phusion Passenger
Phusion Passenger ("mod_rails") is an Apache module which allows Apache to run ruby code (like mod_perl, mod_php, etc).
- Reference: http://www.modrails.com/install.html
Enable the repository
$ sudo sh -c 'echo "deb http://apt.brightbox.net lucid main" > /etc/apt/sources.list.d/phusion_passenger.list' $ sudo sh -c 'wget -q -O - http://apt.brightbox.net/release.asc | apt-key add -' $ sudo apt-get update
Install the Apache module
$ sudo apt-get install libapache2-mod-passenger
Configure Apache settings
Apache will serve Redmine via Phusion Passenger, which doesn't rely on CGI or FastCGI! Make sure the .htaccess in redmine/public
is not enabled or it might try to serve Redmine via dispatch.cgi
.
Configure redmine.conf
/etc/apache2/conf.d/redmine.conf:
RailsBaseURI /redmine RailsEnv production <Directory "/var/www/redmine"> AllowOverride all Options -MultiViews #Options Indexes ExecCGI FollowSymLinks Order allow,deny Allow from all </Directory>
Link the Redmine installation to the web document root; make sure to use the same name as in your Apache configuration:
# ln -s /opt/redmine-0.9.4/public/ /var/www/redmine
Fix permissions
Change permissions so the web server can read/write important files/folders:
$ chown -R www-data:www-data /opt/redmine-0.9.4
Restart Apache
# apache2ctl graceful
Test the install
Migrate Trac projects
- Reference: http://www.redmine.org/wiki/1/RedmineMigrate
Install sqlite3-ruby
My Trac 11.x databases were in sqlite3 format, so I needed the sqlite3-ruby
gem:
# gem install sqlite3-ruby
Migrate project
From the Redmine directory:
# rake redmine:migrate_from_trac RAILS_ENV="production" (in /opt/redmine-0.9.4) WARNING: a new project will be added to Redmine during this process. Are you sure you want to continue ? [y/N] y Trac directory []: /var/lib/trac/sampler Trac database adapter (sqlite, sqlite3, mysql, postgresql) [sqlite]: sqlite3 Trac database encoding [UTF-8]: Target project identifier []: sampler Migrating components.. Migrating milestones.... Migrating custom fields Migrating tickets Migrating wiki........ Components: 2/2 Milestones: 4/4 Tickets: 0/0 Ticket files: 0/0 Custom values: 0/0 Wiki edits: 8/8 Wiki files: 0/0
Make sure you don't use spaces in the project identifier; this is part of the URL path for the Redmine interface.
Active Directory Authentication
None of this seems to work…
- Reference: http://www.redmine.org/wiki/1/RedmineLDAP
Patch
http://www.redmine.org/issues/4283
# cd /opt/redmine-0.9.4 # patch -p1 < /home/aorth/src/lookup_LDAP_attributes_as_user.patch
Updating Redmine from SVN
See the the official instructions on upgrading via SVN. Also done below as root on a real instance, 1.0.0 → 1.0.1:
cd /opt tar cjf redmine_before_1.0.1.tar.bz2 redmine/ cd redmine svn update rake db:migrate RAILS_ENV=production rake db:migrate_plugins RAILS_ENV=production rake tmp:cache:clear rake tmp:sessions:clear apache2ctl graceful
Change local administrator password manually
# cd /opt/redmine # RAILS_ENV=production ruby1.8 script/runner 'user = User.find(:first, :conditions => {:admin => true}) ; user.password, user.password_confirmation = "my_password"; user.save!'