Redmine Installation and Configuration in Linux

0. Introduction

[Redmine] Redmine is a flexible project management web application. Written using the Ruby on Rails framework, it is cross-platform and cross-database.

[Ruby on Rails] Ruby on Rails, often shortened to Rails or RoR, is an open source web application framework for the Ruby programming language.

1. Environment & Resource

1.1 Environment

Red Hat Enterprise Linux AS release 4 (Nahant Update 3) 64bit

GCC 3.4.5

1.2 Resource

MySQL 5.1.60 (http://www.mysql.com/downloads/mysql/5.1.html)

Apache httpd server 2.2.21 (http://httpd.apache.org/download.cgi)

redmine

1.2.2

1.1.0

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

ruby

1.8.7

1.8.7

http://ftp.ruby-lang.org/pub/ruby/1.8/

rubygems

1.6.2

1.3.7

http://rubyforge.org/frs/?group_id=126

rake

0.8.7

0.8.7

 

rack

1.1.1

1.0.1

 

rails

2.3.11

2.3.5

 

zlib 1.2.5 (http://www.zlib.org/)

i18n 0.4.2

mysql-ruby 2.8.2 (http://rubyforge.org/frs/?group_id=4550)

passenger 3.0.11 (http://rubyforge.org/frs/?group_id=5873)

openssl 0.9.8k (http://www.openssl.org/source/)

Run the following commands to get some gem files:

wget http://rubygems.org/downloads/rake-0.8.7.gem

wget http://rubygems.org/downloads/rack-1.1.1.gem
wget http://rubygems.org/downloads/rails-2.3.11.gem
wget http://rubygems.org/downloads/activesupport-2.3.11.gem
wget http://rubygems.org/downloads/activerecord-2.3.11.gem
wget http://rubygems.org/downloads/actionpack-2.3.11.gem
wget http://rubygems.org/downloads/actionmailer-2.3.11.gem
wget http://rubygems.org/downloads/activeresource-2.3.11.gem

wget http://rubygems.org/downloads/rack-1.0.1.gem
wget http://rubygems.org/downloads/rails-2.3.5.gem
wget http://rubygems.org/downloads/activesupport-2.3.5.gem
wget http://rubygems.org/downloads/activerecord-2.3.5.gem
wget http://rubygems.org/downloads/actionpack-2.3.5.gem
wget http://rubygems.org/downloads/actionmailer-2.3.5.gem
wget http://rubygems.org/downloads/activeresource-2.3.5.gem

wget http://rubygems.org/downloads/i18n-0.4.2.gem

You can chech your downloaded files with me, see appendix 6.3.

2. Steps

2.0 Add Environment Variable

vim ~/.bashrc

And add the following lines:

export CYN_USR="$HOME/usr"
export CYN_DOWNLOAD="$HOME/download"

And execut:

source ~/.bashrc

Attention!!! You should NOT use $CYN_USR and $CYN_DOWNLOAD when you install redmine in your machine, it just an abbreviation of the full path, you should use the full path! $CYN_USR is the folder where the program installed, like the “Program Files” folder under Windows Opration System. $CYN_DOWNLOAD is the folder where I downloaded executable files and packages.

32bit/64bit??? The demo is tested under a 64bit operation system, and the 32bit operation system has the same steps. The only difference is the MySQL package, you should download a 32bit version, and the 32bit and 64bit version are in the same page of MySQL website. Other softwares are the same in 32bit or 64bit, because the ruby is cross-platform. What’s more, we will use source code to install the left softwares.

File list You can find what’s in folder $CYN_DOWNLOAD in the appendix 6.3.

2.1 MySQL Installation

cd $CYN_USR
tar zxvf $CYN_DOWNLOAD/mysql-5.1.60-linux-x86_64-glibc23.tar.gz
(OR  tar zxvf $CYN_DOWNLOAD/mysql-5.1.60-linux-i686-glibc23.tar.gz in 32 bit system)
ln -s mysql-5.1.60-linux-x86_64-glibc23 mysql
(OR  ln -s mysql-5.1.60-linux-i686-glibc23 mysql in 32 bit system)
cd mysql
scripts/mysql_install_db --user=work

The “work” is your linux user name, and you will get the prompt as appendix 6.1 shows

You can start the MySQL daemon with:

$CYN_USR/mysql/bin/mysqld_safe &

You can stop the MySQL daemon with:

$CYN_USR/mysql/bin/mysqladmin -u root -p SHUTDOWN

2.2 Apache Http Server Installation

cd $CYN_USR
tar zxvf $CYN_DOWNLOAD/httpd-2.2.21.tar.gz
cd httpd-2.2.21
./configure --prefix=$CYN_USR/httpd
make
make install

You can start/stop/restart your apache server with the following command:

$CYN_USR/httpd/bin/apachectl start
$CYN_USR/httpd/bin/apachectl stop
$CYN_USR/httpd/bin/apachectl restart

2.3 Ruby Installation

cd $CYN_USR
tar zxvf $CYN_DOWNLOAD/ruby-1.8.7-p174.tar.gz
cd ruby-1.8.7-p174
./configure --prefix=$CYN_USR/ruby
make
make install

2.4 Add Environment Variable

vim ~/.bashrc

And add the following lines:

export MYSQL_HOME="$CYN_USR/mysql"
export HTTPD_HOME="$CYN_USR/httpd"
export RUBY_HOME="$CYN_USR/ruby"
export PATH="$PATH:$RUBY_HOME/bin:$MYSQL_HOME/bin:$MYSQL_HOME/lib:$HTTPD_HOME/bin"

And execute

source ~/.bashrc

2.5 Rubygems Installation

cd $CYN_USR
tar zxvf $CYN_DOWNLOAD/rubygems-1.6.2.tgz
cd rubygems-1.6.2
ruby setup.rb

2.6 zlib Installation

cd $CYN_USR
tar zxvf $CYN_DOWNLOAD/zlib-1.2.5.tar.gz
cd zlib-1.2.5
./configure
make
make test
make install
cd $CYN_USR/ruby-1.8.7-p174/ext/zlib
ruby extconf.rb
make
make install

2.7 Rake, Rack and Rails Installation

Install rails 2.3.11 with:

cd $CYN_DOWNLOAD
gem install --local rake-0.8.7.gem
gem install --local rack-1.1.1.gem
gem install --local rails-2.3.11.gem

Install rails 2.3.5 with:

cd $CYN_DOWNLOAD
gem install --local rake-0.8.7.gem
gem install --local rack-1.0.1.gem
gem install --local activesupport-2.3.5.gem
gem install --local activerecord-2.3.5.gem
gem install --local actionpack-2.3.5.gem
gem install --local actionmailer-2.3.5.gem
gem install --local activeresource-2.3.5.gem
gem install --local rails-2.3.5.gem

2.8 i18n Installation

gem  install --local i18n-0.4.2.gem

2.9 MySQL Configuration

mysql -u root -p
CREATE DATABASE redmine CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'redminepwd';
GRANT ALL ON redmine.* TO 'redmine'@'localhost';

2.10 MySQL-Ruby Installation

cd $CYN_USR
tar zxvf $CYN_DOWNLOAD/mysql-ruby-2.8.2.tar.gz
cd mysql-ruby-2.8.2
ruby extconf.rb --with-mysql-dir=$CYN_USR/mysql
make
ruby ./test.rb -- localhost redmine redminepwd redmine 3306
make install

2.11 Passenger Installation

cd $CYN_USR
tar zxvf $CYN_DOWNLOAD/passenger-3.0.11.tar.gz
cd passenger-3.0.11
./bin/passenger-install-apache2-module

You will get the prompt like appendix 6.2

2.12 Redmine Installation

cd $CYN_USR
tar zxvf $CYN_DOWNLOAD/redmine-1.2.2.tar.gz

2.13 Redmine Configuration

cd $CYN_USR/redmine-1.2.2
cp config/database.yml.example config/database.yml
vim config/database.yml

In the config/database.yml file, modify the production/development/test session like this:

production:
  adapter: mysql
  database: redmine
  host: localhost
  username: redmine
  password: redminepwd
  encoding: utf8

And execute:

rake generate_session_store
RAILS_ENV=production rake db:migrate
RAILS_ENV=production rake redmine:load_default_data

2.14 Apache Server Configuration

In $CYN_USR/httpd/conf/httpd.conf add the following:

LoadModule passenger_module $CYN_USR/passenger-3.0.11/ext/apache2/mod_passenger.so
PassengerRoot $CYN_USR/passenger-3.0.11
PassengerRuby $CYN_USR/ruby/bin/ruby

Listen 8085
<VirtualHost *:8085>
   ServerName www.yourhost.com
   DocumentRoot $CYN_USR/redmine-1.2.2/public
   <Directory $CYN_USR/redmine-1.2.2/public>
      AllowOverride all
      Options -MultiViews
      Options Indexes ExecCGI FollowSymLinks
      Order allow,deny
      Allow from all
   </Directory>
</VirtualHost>

2.15 Test your website

Visit http://localhost:8085/ in your browser.

3. Errors you may meet

To be added, and you can e-mail me or make comments on the end of this article.

4. Reference

[1] http://www.redmine.org/projects/redmine/wiki/RedmineInstall

[2] http://www.cnblogs.com/wuchang/archive/2011/10/04/2199018.html

5. More Information

5.1 Official websites

[1] http://www.redmine.org/

[2] http://rubyonrails.org/

[3] http://www.ruby-lang.org/en/

[4] http://httpd.apache.org/

[5] http://www.mysql.com/

[6] http://rack.rubyforge.org/

[7] http://tmtm.org/en/mysql/ruby/

5.2 Wikis

[1] http://en.wikipedia.org/wiki/Redmine

[2] http://en.wikipedia.org/wiki/Ruby_on_Rails

[3] http://en.wikipedia.org/wiki/Ruby_(programming_language)

6. Appendix

6.1 MySQL Installration

Installing MySQL system tables...
OK
Filling help tables...
OK

To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:

./bin/mysqladmin -u root password 'new-password'
./bin/mysqladmin -u root -h your_host_name password 'new-password'

Alternatively you can run:
./bin/mysql_secure_installation

which will also give you the option of removing the test
databases and anonymous user created by default.  This is
strongly recommended for production servers.

See the manual for more instructions.

You can start the MySQL daemon with:
cd . ; ./bin/mysqld_safe &

You can test the MySQL daemon with mysql-test-run.pl
cd ./mysql-test ; perl mysql-test-run.pl

Please report any problems with the ./bin/mysqlbug script!

6.2 Passenger Installation

--------------------------------------------
The Apache 2 module was successfully installed.

Please edit your Apache configuration file, and add these lines:

   LoadModule passenger_module $CYN_USR/passenger-3.0.11/ext/apache2/mod_passenger.so
   PassengerRoot $CYN_USR/passenger-3.0.11
   PassengerRuby $CYN_USR/ruby/bin/ruby

After you restart Apache, you are ready to deploy any number of Ruby on Rails
applications on Apache, without any further Ruby on Rails-specific
configuration!

Press ENTER to continue.

--------------------------------------------
Deploying a Ruby on Rails application: an example

Suppose you have a Rails application in /somewhere. Add a virtual host to your
Apache configuration file and set its DocumentRoot to /somewhere/public:

   <VirtualHost *:80>
      ServerName www.yourhost.com
      DocumentRoot /somewhere/public    # <-- be sure to point to 'public'!
      <Directory /somewhere/public>
         AllowOverride all              # <-- relax Apache security settings
         Options -MultiViews            # <-- MultiViews must be turned off
      </Directory>
   </VirtualHost>

And that's it! You may also want to check the Users Guide for security and
optimization tips, troubleshooting and other useful information:

  $CYN_USR/passenger-3.0.11/doc/Users guide Apache.html

Enjoy Phusion Passenger, a product of Phusion (www.phusion.nl) :-)
http://www.modrails.com/

Phusion Passenger is a trademark of Hongli Lai & Ninh Bui.

6.3 File list of $CYN_DOWNLOAD

actionmailer-2.3.11.gem
actionmailer-2.3.5.gem
actionpack-2.3.11.gem
actionpack-2.3.5.gem
activerecord-2.3.11.gem
activerecord-2.3.5.gem
activeresource-2.3.11.gem
activeresource-2.3.5.gem
activesupport-2.3.11.gem
activesupport-2.3.5.gem
httpd-2.2.21.tar.gz
i18n-0.4.2.gem
mysql-5.1.60-linux-i686-glibc23.tar.gz
mysql-5.1.60-linux-x86_64-glibc23.tar.gz
mysql-ruby-2.8.2.tar.gz
openssl-0.9.8k.tar.gz
passenger-3.0.11.tar.gz
rack-1.0.1.gem
rack-1.1.1.gem
rails-2.3.11.gem
rails-2.3.5.gem
rake-0.8.7.gem
redmine-1.2.2.tar.gz
ruby-1.8.7-p174.tar.gz
rubygems-1.3.7.tgz
rubygems-1.6.2.tgz
zlib-1.2.5.tar.gz

 

OK, that’s all of redmine installation, congratulations and thank you for your reading!

posted @ 2011-12-21 16:14  Yineng  阅读(736)  评论(0编辑  收藏  举报
Homepage: www.chenyineng.info
Copyright 2010 - 2014 Yineng Chen. All rights reserved.