Project

General

Profile

InstallRedmineOnDebianStableApacheMysqlPassenger » History » Version 3

Jan Niggemann (redmine.org team member), 2013-01-22 11:26

1 3 Jan Niggemann (redmine.org team member)
h1. InstallRedmineOnDebianStableApacheMysqlPassenger
2 1 Jan Niggemann (redmine.org team member)
3 3 Jan Niggemann (redmine.org team member)
Last updated: January 2012
4 1 Jan Niggemann (redmine.org team member)
5 3 Jan Niggemann (redmine.org team member)
h1. Chapter 0: Preface
6 1 Jan Niggemann (redmine.org team member)
7 3 Jan Niggemann (redmine.org team member)
h2. About this guide
8
9
This is a step-by-step guide to install redmine on "Debian stable" (called Squeeze at the moment of writing).
10
It is written for people who are familiar with Debian, the shell, MySQL, Apache and Linux in general.
11
To keep this guide short, it does not explain every step in detail, but *after reading, even novices should end up with a working redmine instance*.
12
13
*%{color:red}Please note:%* We're assuming that you know how to use the tools at hand. If that's not the case (eg. you don't know how to create a new database or you don't know how to restart apache) please use the search engine of your choice and come back afterwards.
14
15
h1. Chapter 1: Install ruby, rails, gems and passenger
16
17
{{collapse(Read chapter 1)
18
19 1 Jan Niggemann (redmine.org team member)
h2. 1.1 Prepare your system
20
21
<pre>apt-get install gcc build-essential zlib1g zlib1g-dev zlibc libzlib-ruby libssl-dev libyaml-dev libcurl4-openssl-dev apache2-mpm-prefork apache2-prefork-dev libapr1-dev</pre>
22
23
h2. 1.2 download, build and install ruby
24
25
<pre>wget ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p327.tar.gz
26
tar xvfz ruby-1.9.3-p327.tar.gz
27
cd ruby-1.9.2-p0
28
./configure --enable-pthread --prefix=/usr/local
29
make && make install</pre>
30
31
h2. 1.3 check if ruby works
32
33
<pre>ruby –v</pre>
34
35
h2. 1.4 make ruby support OpenSSL
36
37
<pre>cd ruby-1.9.2-p0
38
cd ext/openssl/
39
ruby extconf.rb
40
make && make install</pre>
41
42
h2. 1.5 gem installed?
43
44
By now, gem should already be installed, check:
45
<pre>gem -v</pre>
46
47
h2. 1.6 install rails
48
49
<pre>gem install rails</pre>
50
51
h2. 1.7 install passenger (application server)
52
53
<pre>gem install passenger
54
passenger-install-apache2-module</pre>
55
56
h2. 1.8 configure apache
57
58
Put this in /etc/apache/mods-available/passenger.load
59
<pre>LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.18/ext/apache2/mod_passenger.so</pre>
60
61
And put this in /etc/apache/mods-available/passenger.conf
62
<pre>PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.18
63
PassengerRuby /usr/local/bin/ruby
64
PassengerDefaultUser www-data</pre>
65
66
67
h2. 1.9 activate module
68
69
<pre>a2enmod passenger</pre>
70
71 3 Jan Niggemann (redmine.org team member)
}}
72 1 Jan Niggemann (redmine.org team member)
73 3 Jan Niggemann (redmine.org team member)
h1. Chapter 2: Install redmine
74
75
{{collapse(Read chapter 2)
76
77 2 Jan Niggemann (redmine.org team member)
h2. 2.1 download redmine
78
79
Get latest zip from "here":http://rubyforge.org/frs/?group_id=1850 and unpack to /opt
80
81
h2. 2.2 further prepare the system
82
83
Note: Installing @libmagick9-dev@ installs a lot of packages (depends / recommends)
84
<pre>gem install bundler
85
apt-get install libmagick9-dev
86
bundle install --without postgresql</pre>
87
88
h2. 2.3 create databases
89
90
We now create 2 databases, one for production and one for development.
91
I won't give detailed instructions on how to use mysql, please use you favorite search engine to find information you need.
92
93
<pre>create database redmine character set utf8;
94
create database redmine_dev character set utf8;
95
create user 'redmine'@'localhost' identified by 'XXX';
96
grant all privileges on redmine.* to 'redmine'@'localhost';
97
grant all privileges on redmine_dev.* to 'redmine'@'localhost';</pre>
98
99
100
h2. 2.4 configure DB-connection
101
102
Put this in /opt/redmine/config/database.yml
103
<pre>production:
104
adapter: mysql2
105
database: redmine
106
host: localhost
107
username: redmine
108
password: my_password</pre>
109
110
h2. 2.5 generate a session store secret
111
112
<pre>rake generate_secret_token</pre>
113
114
h2. 2.6 prepare database / create tables
115
116
<pre>RAILS_ENV=production rake db:migrate</pre>
117
118
h2. 2.7 set filesystem permissions
119
120
<pre>mkdir /opt/redmine/plugin_assets (oder public/plugin_assets?)
121
chown www-data:www-data /opt/redmine/plugin_assets</<pre>
122 1 Jan Niggemann (redmine.org team member)
123
h2. 2.8 test if it works
124
<pre>ruby script/rails server webrick -e production</<pre>
125
Now go to http://localhost:3000 and see redmine in action.
126 3 Jan Niggemann (redmine.org team member)
127
}}
128
129
h1. Chapter 3: Configure apache and passenger
130
131
In this guide, we deploy to a sub-URI. Read other guides if you want a name-based virtual host configuration.
132
133
{{collapse(Read chapter 3)
134
135
h2. Deployment in subURI
136
<pre>
137
ln -s /opt/redmine/public /var/www/redmine
138
139
/etc/apache2/sites-available/redmine
140
141
[Location /redmine-dev]
142
  RailsEnv development
143
		RailsBaseURI /redmine-dev
144
		Options –MultiViews
145
[/Location]
146
[Location /redmine]
147
		RailsEnv production
148
		RailsBaseURI /redmine
149
		Options –MultiViews
150
[/Location]
151
</pre>
152
153
}}