Project

General

Profile

HowTo install Redmine on CentOS 5 » History » Version 54

Stephan Schuberth, 2012-03-27 18:05

1 27 Yu Kobayashi
h1. HowTo install Redmine on CentOS 5 or 6
2 1 Serafim J Fagundes
3 3 Mischa The Evil
{{>toc}}
4
5 39 Stephan Schuberth
h1. Assumptions
6 33 Nick Shel
7 34 Nick Shel
* Apache is up and running
8
* Apache has previously been used and works quite well 
9
* MySQL is up and running
10
* MySQL has previously been used and works quite well
11 1 Serafim J Fagundes
* Your are logged as root
12
* The next steps are done successively without errors
13 30 Nick Shel
14 40 Stephan Schuberth
h1. Steps to take
15 1 Serafim J Fagundes
16 40 Stephan Schuberth
h2. Install gem and passenger dependencies
17 1 Serafim J Fagundes
18 41 Stephan Schuberth
<pre>yum -y install zlib-devel curl-devel openssl-devel httpd-devel apr-devel apr-util-devel mysql-devel</pre>
19 28 Nick Shel
20 1 Serafim J Fagundes
h2. Get Ruby
21 45 Stephan Schuberth
22 44 Stephan Schuberth
Things after *#* are comments, and it is no use to type this stuff in ;) 
23 41 Stephan Schuberth
<pre>cd ~/Downloads  # YOUR FOLDER OF CHOICE
24 1 Serafim J Fagundes
ftp ftp.ruby-lang.org
25
</pre>
26 45 Stephan Schuberth
27 44 Stephan Schuberth
h3. FTP session
28 45 Stephan Schuberth
29 41 Stephan Schuberth
<pre>ftp> Anonymous  # USERLOGIN
30 1 Serafim J Fagundes
ftp> 'none', just hit Enter  # NO PASSWORD
31
ftp> cd /pub/ruby
32
ftp> get ruby-1.8.7.pXXX.tar.gz  # XXX is currently 358, as of 03/2012
33 41 Stephan Schuberth
ftp> bye</pre>
34 45 Stephan Schuberth
35 44 Stephan Schuberth
h3. Unzip
36 45 Stephan Schuberth
37 41 Stephan Schuberth
<pre>tar zxvf ruby-1.8.7.pXXX.tar.gz</pre>
38 45 Stephan Schuberth
39 44 Stephan Schuberth
h3. Install
40 45 Stephan Schuberth
41 41 Stephan Schuberth
<pre>cd ruby-1.8.7.pXXX
42 1 Serafim J Fagundes
./configure
43
make
44 41 Stephan Schuberth
make install</pre>
45 45 Stephan Schuberth
46 44 Stephan Schuberth
h3. Check Installation
47 45 Stephan Schuberth
48 52 Stephan Schuberth
<pre>ruby -v</pre>
49 54 Stephan Schuberth
If this does not work, it is probably because there is no ruby at /usr/bin to be found. 
50
If it works, skip directly to "Get Gems 1.4.2".
51 53 Stephan Schuberth
52 49 Stephan Schuberth
h3. Fix dependencies with a symlink
53 51 Stephan Schuberth
54 49 Stephan Schuberth
(Only in case _ruby -v_ is *NOT* working)
55 1 Serafim J Fagundes
<pre>which ruby  # TO CHECK WHERE IT SHOULD BE
56 43 Stephan Schuberth
whereis ruby  # TO CHECK WHERE IT IS INSTALLED</pre>
57 49 Stephan Schuberth
_which_ returns like /usr/bin/ along with other directories (where ruby is expected to be), and _whereis_ returns like /usr/local/bin/ruby (thats where ruby actually lies).
58 1 Serafim J Fagundes
59 49 Stephan Schuberth
Create the Link:
60
<pre>ln -s /usr/local/bin/ruby /usr/bin/ruby</pre>
61
Check again if it is working:
62
<pre>ruby -v # NOW IT MUST RETURN RUBY VERSION, ELSE SOMETHING ELSE IS BROKEN
63 41 Stephan Schuberth
cd ..</pre>
64 38 Stephan Schuberth
65 40 Stephan Schuberth
h2. Get Gems 1.4.2 (does not work with Gems 1.5)
66 1 Serafim J Fagundes
67 41 Stephan Schuberth
<pre>wget http://production.cf.rubygems.org/rubygems/rubygems-1.4.2.tgz
68 1 Serafim J Fagundes
tar zxvf rubygems-1.4.2.tgz
69
cd rubygems-1.4.2
70
ruby setup.rb
71
gem -v
72
which gem
73 41 Stephan Schuberth
cd ..</pre>
74 3 Mischa The Evil
75 1 Serafim J Fagundes
h2. Install Passenger (requires gcc)
76
77 41 Stephan Schuberth
<pre>gem install passenger
78
passenger-install-apache2-module</pre>
79 26 Anonymous
80
An alternate method is to install mod_passenger RPM for Apache from the following location: 
81
http://passenger.stealthymonkeys.com/
82
83
RHEL/CentOS 5
84 41 Stephan Schuberth
<pre>rpm -Uvh http://passenger.stealthymonkeys.com/rhel/5/passenger-release.noarch.rpm
85
yum install mod_passenger</pre>
86 26 Anonymous
87 1 Serafim J Fagundes
RHEL/CentOS 6
88 41 Stephan Schuberth
<pre>rpm --import http://passenger.stealthymonkeys.com/RPM-GPG-KEY-stealthymonkeys.asc
89 26 Anonymous
yum install http://passenger.stealthymonkeys.com/rhel/6/passenger-release.noarch.rpm
90 41 Stephan Schuberth
yum install mod_passenger</pre>
91 26 Anonymous
92 40 Stephan Schuberth
h2. Restart Apache
93 1 Serafim J Fagundes
94
<pre>service httpd restart</pre>
95
96
h2. Download Redmine
97 3 Mischa The Evil
98 40 Stephan Schuberth
Download page: http://rubyforge.org/frs/?group_id=1850
99 1 Serafim J Fagundes
100 41 Stephan Schuberth
<pre>wget http://rubyforge.org/frs/download.php/75597/redmine-1.3.0.tar.gz  # GET LATEST VERSION ON RUBYFORGE
101
tar zxvf redmine-1.3.0.tar.gz</pre>
102 16 Steven Verbeek
103 1 Serafim J Fagundes
h2. Copy the folder to its HTTP document root folder
104
105 40 Stephan Schuberth
<pre>cp -av redmine-1.3.0/* /var/www/redmine</pre>
106 16 Steven Verbeek
107 26 Anonymous
h2. Configure Apache to host the documents
108 1 Serafim J Fagundes
109 40 Stephan Schuberth
more information can be found here: [[HowTo configure Apache to run Redmine]]
110 1 Serafim J Fagundes
111 40 Stephan Schuberth
h2. Install Bundler
112 4 Neil McFarlane
113 1 Serafim J Fagundes
<pre>gem install bundler</pre>
114
115
h2. Add the Bundler Boot and preinitializer code
116
117 8 Erwin Baeyens
For more info go to the "Bundler site":http://gembundler.com/.
118 20 Johannes M.
119 22 Johannes M.
h2. Create the Gemfile and register these gems in it
120 20 Johannes M.
121 21 Johannes M.
<pre>vi /var/www/redmine/Gemfile</pre>
122
123 41 Stephan Schuberth
<pre># file: /var/www/redmine/Gemfile
124 21 Johannes M.
source "http://rubygems.org"
125
gem "rake", "0.8.3"
126
gem "rack", "1.1.0"
127
gem "i18n", "0.4.2"
128 20 Johannes M.
gem "rubytree", "0.5.2", :require => "tree"
129 1 Serafim J Fagundes
gem "RedCloth", "~>4.2.3", :require => "redcloth" # for CodeRay
130 3 Mischa The Evil
gem "mysql"
131 41 Stephan Schuberth
gem "coderay", "~>0.9.7"</pre>
132 1 Serafim J Fagundes
133 40 Stephan Schuberth
<pre>bundle install</pre>
134 23 Johannes M.
135
h2. Create the Redmine MySQL database
136
137 41 Stephan Schuberth
<pre>yum install mysql-server
138 23 Johannes M.
chkconfig mysqld on
139
service mysqld start
140 41 Stephan Schuberth
/usr/bin/mysql_secure_installation</pre>
141 1 Serafim J Fagundes
142 23 Johannes M.
> For MySQL:
143 11 Erwin Baeyens
> start the mysql client (@mysql -u root -p@) and enter the following commands
144
> > <pre>create database redmine character set utf8;
145
create user 'redmine'@'localhost' identified by 'my_password';
146 10 Erwin Baeyens
grant all privileges on redmine.* to 'redmine'@'localhost'; </pre>
147 11 Erwin Baeyens
148
> For versions of MySQL prior to 5.0.2 - skip the 'create user' step and instead:
149
150 9 Erwin Baeyens
> > <pre> grant all privileges on redmine.* to 'redmine'@'localhost' identified by 'my_password';</pre>
151 24 Johannes M.
152 40 Stephan Schuberth
h2. Configure /var/www/redmine/config/database.yml (rename database.yml.example)
153 1 Serafim J Fagundes
154 40 Stephan Schuberth
h2. Set the production environment (optional)
155 7 Thibault B
156 1 Serafim J Fagundes
Uncomment the following line in file redmine/config/environment.rb:
157 3 Mischa The Evil
158 1 Serafim J Fagundes
<pre>ENV['RAILS_ENV'] ||= 'production'</pre>
159
160 40 Stephan Schuberth
h2. Generate the session store
161 3 Mischa The Evil
162 1 Serafim J Fagundes
<pre>RAILS_ENV=production bundle exec rake generate_session_store</pre>
163
164 40 Stephan Schuberth
h2. Migrate the database models
165 3 Mischa The Evil
166 1 Serafim J Fagundes
<pre>RAILS_ENV=production bundle exec rake db:migrate</pre>
167
168 40 Stephan Schuberth
h2. Load default data (optional)
169 3 Mischa The Evil
170 1 Serafim J Fagundes
<pre>RAILS_ENV=production bundle exec rake redmine:load_default_data</pre>
171
172
Follow instructions.
173 25 Johannes M.
174 40 Stephan Schuberth
h2. Rename dispatch CGI files in /var/www/redmine/public/
175 3 Mischa The Evil
176
<pre>
177 1 Serafim J Fagundes
mv dispatch.cgi.example dispatch.cgi
178
mv dispatch.fcgi.example dispatch.fcgi
179 3 Mischa The Evil
mv dispatch.rb.example dispatch.rb
180 1 Serafim J Fagundes
</pre>
181
182 40 Stephan Schuberth
h2. Edit .htaccess file for CGI dispatch configuration
183 5 Mauro Mazzieri
184
<pre>
185
mv htaccess.fcgi.example .htaccess
186 1 Serafim J Fagundes
</pre>
187
188 40 Stephan Schuberth
h2. Chown and Chmod files for read/write access for the Apache user
189 3 Mischa The Evil
190
<pre>
191 1 Serafim J Fagundes
cd ..
192
chown -R apache:apache redmine-1.x
193 3 Mischa The Evil
chmod -R 755 redmine-1.x
194 2 Serafim J Fagundes
</pre>
195 1 Serafim J Fagundes
196 40 Stephan Schuberth
h2. Redmine should be fully installed now and fully usable
197 1 Serafim J Fagundes
198
Enjoy!