InstallRedmineOnDebianStableApacheMysqlPassenger » History » Version 9
Jan Niggemann (redmine.org team member), 2013-02-17 18:36
Added PDF
1 | 3 | Jan Niggemann (redmine.org team member) | h1. InstallRedmineOnDebianStableApacheMysqlPassenger |
---|---|---|---|
2 | 1 | Jan Niggemann (redmine.org team member) | |
3 | 4 | Jan Niggemann (redmine.org team member) | h1. Preface |
4 | 1 | Jan Niggemann (redmine.org team member) | |
5 | 9 | Jan Niggemann (redmine.org team member) | Last updated: 2013-02-17 |
6 | |||
7 | Download a PDF of the original document from my site: http://files.hz6.de/redmine/installing_redmine.pdf |
||
8 | 1 | Jan Niggemann (redmine.org team member) | |
9 | 4 | Jan Niggemann (redmine.org team member) | *After reading this guide you should have a working redmine instance*. |
10 | If this is not the case or if a step fails, please post details on the forums and refer to this wiki page. Make sure to include the output of @gem env@ and / or @RAILS_ENV=production /opt/redmine/script/about@. |
||
11 | If this guide has issues, please "contact me":http://www.redmine.org/users/55460 or correct it yourself. |
||
12 | |||
13 | 3 | Jan Niggemann (redmine.org team member) | h2. About this guide |
14 | 1 | Jan Niggemann (redmine.org team member) | |
15 | This is a step-by-step guide to install redmine on "Debian stable" (called Squeeze at the moment of writing). |
||
16 | 3 | Jan Niggemann (redmine.org team member) | It is written for people who are familiar with Debian, the shell, MySQL, Apache and Linux in general. |
17 | 4 | Jan Niggemann (redmine.org team member) | To keep this guide short, it does not explain every step in detail, but |
18 | 1 | Jan Niggemann (redmine.org team member) | |
19 | 4 | Jan Niggemann (redmine.org team member) | *The filenames and paths in this document are subject to frequent change. I'll do my best to keep them up-to-date, but please check anyway.* |
20 | 3 | Jan Niggemann (redmine.org team member) | |
21 | 4 | Jan Niggemann (redmine.org team member) | *%{color:red}Please note:%* I'm 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. |
22 | |||
23 | 3 | Jan Niggemann (redmine.org team member) | h1. Chapter 1: Install ruby, rails, gems and passenger |
24 | 1 | Jan Niggemann (redmine.org team member) | |
25 | {{collapse(Read chapter 1) |
||
26 | |||
27 | h2. 1.1 Prepare your system |
||
28 | |||
29 | 8 | Jan Niggemann (redmine.org team member) | <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 checkinstall</pre> |
30 | 1 | Jan Niggemann (redmine.org team member) | |
31 | h2. 1.2 download, build and install ruby |
||
32 | |||
33 | 4 | Jan Niggemann (redmine.org team member) | <pre>cd ~ |
34 | wget ftp://ftp.ruby-lang.org/pub/ruby/stable/ruby-1.9.3-p374.tar.gz |
||
35 | tar xvfz ruby-1.9.3-p374.tar.gz |
||
36 | cd ruby-1.9.3-p374 |
||
37 | 1 | Jan Niggemann (redmine.org team member) | ./configure --enable-pthread --prefix=/usr/local |
38 | 8 | Jan Niggemann (redmine.org team member) | make && checkinstall --type=debian --install=yes --fstrans=no --pakdir='~'</pre> |
39 | 1 | Jan Niggemann (redmine.org team member) | |
40 | h2. 1.3 check if ruby works |
||
41 | |||
42 | 4 | Jan Niggemann (redmine.org team member) | Expected output: @ruby 1.9.3p374 (2013-01-15 revision 38858) [i686-linux]@ |
43 | 1 | Jan Niggemann (redmine.org team member) | <pre>ruby –v</pre> |
44 | |||
45 | h2. 1.4 make ruby support OpenSSL |
||
46 | |||
47 | 4 | Jan Niggemann (redmine.org team member) | <pre>cd ext/openssl/ |
48 | 1 | Jan Niggemann (redmine.org team member) | ruby extconf.rb |
49 | 8 | Jan Niggemann (redmine.org team member) | make && checkinstall --type=debian --install=yes --fstrans=no --pakdir='~'</pre> |
50 | 1 | Jan Niggemann (redmine.org team member) | |
51 | h2. 1.5 gem installed? |
||
52 | |||
53 | 4 | Jan Niggemann (redmine.org team member) | Ruby 1.9 comes with RubyGems by default, so by now @gem@ should be installed. If correctly installed, the following command will output a version number like @1.8.2x@: |
54 | 1 | Jan Niggemann (redmine.org team member) | <pre>gem -v</pre> |
55 | |||
56 | h2. 1.6 install rails |
||
57 | |||
58 | <pre>gem install rails</pre> |
||
59 | |||
60 | h2. 1.7 install passenger (application server) |
||
61 | |||
62 | <pre>gem install passenger |
||
63 | passenger-install-apache2-module</pre> |
||
64 | |||
65 | h2. 1.8 configure apache |
||
66 | |||
67 | 4 | Jan Niggemann (redmine.org team member) | Put this in @/etc/apache/mods-available/passenger.load@ (remember to adjust the paths if necessary). |
68 | 1 | Jan Niggemann (redmine.org team member) | <pre>LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.18/ext/apache2/mod_passenger.so</pre> |
69 | |||
70 | 4 | Jan Niggemann (redmine.org team member) | And put this in @/etc/apache/mods-available/passenger.conf@ (remember to adjust the paths if necessary). |
71 | 1 | Jan Niggemann (redmine.org team member) | <pre>PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.18 |
72 | PassengerRuby /usr/local/bin/ruby |
||
73 | PassengerDefaultUser www-data</pre> |
||
74 | |||
75 | |||
76 | h2. 1.9 activate module |
||
77 | |||
78 | 3 | Jan Niggemann (redmine.org team member) | <pre>a2enmod passenger</pre> |
79 | |||
80 | }} |
||
81 | 2 | Jan Niggemann (redmine.org team member) | |
82 | 1 | Jan Niggemann (redmine.org team member) | h1. Chapter 2: Install redmine |
83 | 2 | Jan Niggemann (redmine.org team member) | |
84 | 1 | Jan Niggemann (redmine.org team member) | {{collapse(Read chapter 2) |
85 | 2 | Jan Niggemann (redmine.org team member) | |
86 | h2. 2.1 download redmine |
||
87 | |||
88 | 4 | Jan Niggemann (redmine.org team member) | Get latest zip from "here":http://rubyforge.org/frs/?group_id=1850 and unpack to /opt/redmine |
89 | 2 | Jan Niggemann (redmine.org team member) | |
90 | h2. 2.2 further prepare the system |
||
91 | |||
92 | Note: Installing @libmagick9-dev@ installs a lot of packages (depends / recommends) |
||
93 | <pre>gem install bundler |
||
94 | 1 | Jan Niggemann (redmine.org team member) | apt-get install libmagick9-dev |
95 | 4 | Jan Niggemann (redmine.org team member) | cd /opt/redmine |
96 | 2 | Jan Niggemann (redmine.org team member) | bundle install --without postgresql</pre> |
97 | |||
98 | 4 | Jan Niggemann (redmine.org team member) | h2. 2.3 create database |
99 | 2 | Jan Niggemann (redmine.org team member) | |
100 | <pre>create database redmine character set utf8; |
||
101 | create user 'redmine'@'localhost' identified by 'XXX'; |
||
102 | grant all privileges on redmine.* to 'redmine'@'localhost'; |
||
103 | 4 | Jan Niggemann (redmine.org team member) | </pre> |
104 | 1 | Jan Niggemann (redmine.org team member) | |
105 | |||
106 | h2. 2.4 configure DB-connection |
||
107 | |||
108 | Put this in /opt/redmine/config/database.yml |
||
109 | 2 | Jan Niggemann (redmine.org team member) | <pre>production: |
110 | 6 | Jan Niggemann (redmine.org team member) | adapter: mysql2 |
111 | database: redmine |
||
112 | host: localhost |
||
113 | username: redmine |
||
114 | password: XXX</pre> |
||
115 | 2 | Jan Niggemann (redmine.org team member) | |
116 | h2. 2.5 generate a session store secret |
||
117 | 1 | Jan Niggemann (redmine.org team member) | |
118 | <pre>rake generate_secret_token</pre> |
||
119 | |||
120 | h2. 2.6 prepare database / create tables |
||
121 | |||
122 | <pre>RAILS_ENV=production rake db:migrate</pre> |
||
123 | 2 | Jan Niggemann (redmine.org team member) | |
124 | 1 | Jan Niggemann (redmine.org team member) | h2. 2.7 set filesystem permissions |
125 | |||
126 | 4 | Jan Niggemann (redmine.org team member) | <pre>cd /opt/redmine |
127 | mkdir tmp tmp/pdf public/plugin_assets |
||
128 | chown -R www-data:www-data files log tmp public/plugin_assets |
||
129 | chmod -R 755 files log tmp public/plugin_assets |
||
130 | </pre> |
||
131 | 1 | Jan Niggemann (redmine.org team member) | |
132 | h2. 2.8 test if it works |
||
133 | 4 | Jan Niggemann (redmine.org team member) | |
134 | 5 | Jan Niggemann (redmine.org team member) | <pre>ruby script/rails server webrick -e production</pre> |
135 | 3 | Jan Niggemann (redmine.org team member) | Now go to http://localhost:3000 and see redmine in action. |
136 | |||
137 | }} |
||
138 | |||
139 | h1. Chapter 3: Configure apache and passenger |
||
140 | |||
141 | In this guide, we deploy to a sub-URI. Read other guides if you want a name-based virtual host configuration. |
||
142 | |||
143 | {{collapse(Read chapter 3) |
||
144 | |||
145 | 4 | Jan Niggemann (redmine.org team member) | h2. 3.1 Configure apache (subURI deployment) |
146 | 3 | Jan Niggemann (redmine.org team member) | |
147 | 4 | Jan Niggemann (redmine.org team member) | <pre>ln -s /opt/redmine/public /var/www/redmine</pre> |
148 | 3 | Jan Niggemann (redmine.org team member) | |
149 | 4 | Jan Niggemann (redmine.org team member) | Put this in @/etc/apache2/sites-available/redmine@ |
150 | <pre> |
||
151 | <Location /redmine> |
||
152 | 3 | Jan Niggemann (redmine.org team member) | RailsEnv production |
153 | RailsBaseURI /redmine |
||
154 | Options –MultiViews |
||
155 | 4 | Jan Niggemann (redmine.org team member) | </Location> |
156 | 3 | Jan Niggemann (redmine.org team member) | </pre> |
157 | 4 | Jan Niggemann (redmine.org team member) | |
158 | Restart apache, test if http://yourhost.com/redmine is working, rejoice if it is :-) |
||
159 | |||
160 | If you see something unexpected, please post details on the forums and refer to this wiki page. Make sure to include the output of @gem env@ and / or @RAILS_ENV=production /opt/redmine/script/about@. |
||
161 | 3 | Jan Niggemann (redmine.org team member) | |
162 | 1 | Jan Niggemann (redmine.org team member) | }} |