Many companies and projects have started using an open-source project management tool to manage their projects called Redmine. You can see a short list of known users of Redmine here.
Redmine is a web application that allows management of multiple projects, role based acl’s, issue tracking, Gantt charts, document management, email notifications, rss feeds, wikis, forums, time tracking, LDAP authentication, and SCM integration supporting SVN, CVS, Git, Mercurial, Bazarr and Darcs. An online demo of Redmine is available here.
Redmine should run on any operating system (Unix, Linux, Mac, and Windows) where Ruby on Rails can be installed and either a MySQL, PostgreSQL, or SQLite 3 database is available.
To install and run the latest version, you should have Ruby version 1.8.6 or 1.8.7 (Ruby 1.9 is not supported yet) and Rails 2.3.5. RubyGems 1.3.1 is required (I used 1.3.7 and it worked well) and Rake 0. 8.3 or greater.
The test system used for my installtion was a CentOS 5.5 server with MySQL installed and ready. However, only Ruby 1.8.5 was available on my system even with the CentOS testing repo enabled. To get version 1.8.6, I used the RubyWorks repo. Follow the instructions here centos.html to add the repo. It is not necessary to install RubyWorks.
To check out the latest SVN version (this is recomended as Redmine is about to approach a 1.0 release, and it is possible that you could encounter a bug or two, but I’ve had no issues so far) install subversion if you don’t have it already.
Checkout Redmine with: svn checkout
Make sure you have the following packages installed before continuing: yum install ruby rubygems ruby-mysql
You’ll need to get the version of rails compatible with the SVN version, use: gem install rails -v=2.3.5
You will also need Rake: gem install rake
For use with MySQL, you’ll need to add the redmine database and user: create database redmine character set utf8; create user ‘redmine’@'localhost’ identified by ‘my_password’; grant all privileges on redmine.* to ‘redmine’@'localhost’;
Now copy the config/database.yml.example to config/database.yml and configure settings for a “production” system.
Example database.yml: production: adapter: mysql database: redmine host: localhost username: redmine password: my_password
>From the redmine folder run the command below to generate a session key: rake generate_session_store
Setup the database structre with: RAILS_ENV=production rake db:migrate
Load default data structure into the database: RAILS_ENV=production rake redmine:load_default_data
Set the following permissions: mkdir tmp public/plugin_assets sudo chown -R redmine:redmine files log tmp public/plugin_assets sudo chmod -R 755 files log tmp public/plugin_assets
Start the WEBrick server with: ruby script/server webrick -e production
Go to http://localhost:3000/ to access Redmine using admin/admin for the username/password. By default Redmine only allows local access. To access a remote server you may need to set up an ssh tunnel with: ssh -N -L 3000:localhost:3000 -f username@hostname. Then you should be able to connect to the remote machine on your system by going to http://localhost:3000/ in your web browser.
To allow outside access go to Administration > Settings > General > and set the Hostname and path to the server’s hostname and port you wish to access Redmine from.
IMPORTANT: After setup is complete, do not continue to run the application as root user if you have been doing so. For security you should move or copy the rails trunk to a newly created user account and folder to run the WEBrick as that user. You may need to modify permissions as well. I used the following: chown -R username.username /path/to/redmine
For The Official Install Document click here.