InstallRedmineOnDebianStableApacheMysqlPassenger » History » Version 30
Peter Mueller, 2016-10-31 14:44
1 | 4 | Jan Niggemann (redmine.org team member) | h1. Preface |
---|---|---|---|
2 | 1 | Jan Niggemann (redmine.org team member) | |
3 | 29 | Peter Mueller | Last updated: Oct. 31st, 2016 (Redmine 3.3 on Deb. 8 (64 Bits)) |
4 | 1 | Jan Niggemann (redmine.org team member) | |
5 | 27 | Peter Mueller | (only this Wiki was updated) |
6 | |||
7 | 10 | Jan Niggemann (redmine.org team member) | Download a PDF of the original document from my site: http://files.hz6.de/redmine/InstallingRedmine_EN.pdf |
8 | *Deutsche Version* unter http://files.hz6.de/redmine/InstallingRedmine_DE.pdf |
||
9 | 1 | Jan Niggemann (redmine.org team member) | |
10 | 4 | Jan Niggemann (redmine.org team member) | *After reading this guide you should have a working redmine instance*. |
11 | 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@. |
||
12 | If this guide has issues, please "contact me":http://www.redmine.org/users/55460 or correct it yourself. |
||
13 | |||
14 | 3 | Jan Niggemann (redmine.org team member) | h2. About this guide |
15 | 1 | Jan Niggemann (redmine.org team member) | |
16 | 21 | Jan Niggemann (redmine.org team member) | This is a step-by-step guide to install redmine on "Debian stable" (called Wheezy at the moment of writing). |
17 | 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. |
18 | 10 | Jan Niggemann (redmine.org team member) | To keep this guide short, it does not explain every step in detail. |
19 | 1 | Jan Niggemann (redmine.org team member) | |
20 | 23 | Jan Niggemann (redmine.org team member) | *The versions, 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.* |
21 | 3 | Jan Niggemann (redmine.org team member) | |
22 | 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. |
23 | |||
24 | 3 | Jan Niggemann (redmine.org team member) | h1. Chapter 1: Install ruby, rails, gems and passenger |
25 | 1 | Jan Niggemann (redmine.org team member) | |
26 | {{collapse(Read chapter 1) |
||
27 | |||
28 | h2. 1.1 Prepare your system |
||
29 | |||
30 | 30 | Peter Mueller | <pre>apt-get install gcc build-essential zlib1g zlib1g-dev zlibc libssl-dev libyaml-dev libcurl4-openssl-dev apache2-mpm-prefork apache2-dev libapr1-dev libxslt1-dev checkinstall |
31 | 28 | Peter Mueller | apt-get build-dep ruby |
32 | </pre> |
||
33 | 1 | Jan Niggemann (redmine.org team member) | |
34 | 23 | Jan Niggemann (redmine.org team member) | h2. 1.2 download, build and install ruby |
35 | 1 | Jan Niggemann (redmine.org team member) | |
36 | 27 | Peter Mueller | double check for compliance with here: |
37 | |||
38 | http://www.redmine.org/projects/redmine/wiki/RedmineInstall |
||
39 | |||
40 | 1 | Jan Niggemann (redmine.org team member) | <pre>cd ~ |
41 | 27 | Peter Mueller | # wget ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p547.tar.gz |
42 | # tar xvfz ruby-1.9.3-p547.tar.gz |
||
43 | # cd ruby-1.9.3-p547 |
||
44 | 30 | Peter Mueller | wget -c ftp://ftp.ruby-lang.org/pub/ruby/2.3/ruby-2.3.1.tar.gz |
45 | tar xvfz ruby-2.3.1.tar.gz |
||
46 | cd ruby-2.3.1 |
||
47 | 1 | Jan Niggemann (redmine.org team member) | ./configure --enable-pthread --prefix=/usr/local |
48 | 27 | Peter Mueller | </pre> |
49 | 1 | Jan Niggemann (redmine.org team member) | |
50 | 27 | Peter Mueller | * read and check the output carefully :) |
51 | * add if needed missed packages |
||
52 | |||
53 | <pre> |
||
54 | make |
||
55 | su |
||
56 | checkinstall --type=debian --install=yes --fstrans=no --pakdir='~'</pre> |
||
57 | |||
58 | 1 | Jan Niggemann (redmine.org team member) | h2. 1.3 check if ruby works |
59 | |||
60 | Expected output: @ruby 1.9.3p547 (2013-06-27 revision 41675) [i686-linux]@ |
||
61 | <pre>ruby –v</pre> |
||
62 | 4 | Jan Niggemann (redmine.org team member) | |
63 | 1 | Jan Niggemann (redmine.org team member) | h2. 1.4 make ruby support OpenSSL |
64 | 8 | Jan Niggemann (redmine.org team member) | |
65 | 1 | Jan Niggemann (redmine.org team member) | <pre>cd ext/openssl/ |
66 | ruby extconf.rb |
||
67 | make && checkinstall --type=debian --install=yes --fstrans=no --pakdir='~'</pre> |
||
68 | 4 | Jan Niggemann (redmine.org team member) | |
69 | 1 | Jan Niggemann (redmine.org team member) | h2. 1.5 gem installed? |
70 | 11 | Jan Niggemann (redmine.org team member) | |
71 | 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@: |
||
72 | 1 | Jan Niggemann (redmine.org team member) | <pre>gem -v</pre> |
73 | We can now install rdoc: |
||
74 | <pre>gem install rdoc</pre> |
||
75 | |||
76 | h2. 1.6 install rails |
||
77 | |||
78 | 27 | Peter Mueller | check with here: |
79 | |||
80 | https://rubygems.org/gems/rails/versions |
||
81 | http://www.redmine.org/projects/redmine/wiki/RedmineInstall |
||
82 | |||
83 | and force the version number (otherwise the latest version will be installed) |
||
84 | |||
85 | <pre> |
||
86 | #gem install rails --no-ri --no-rdoc |
||
87 | gem install rails -v=3.2.22 --no-ri --no-rdoc |
||
88 | </pre> |
||
89 | 23 | Jan Niggemann (redmine.org team member) | Note: You may be getting the error message _"no such file to load --zlib (LoadError)"_. In this case |
90 | 11 | Jan Niggemann (redmine.org team member) | you need to install zlib first: |
91 | <pre>cd ruby-1.9.3-p547/ext/zlib/ |
||
92 | ruby extconf.rb |
||
93 | 1 | Jan Niggemann (redmine.org team member) | make |
94 | make install</pre> |
||
95 | |||
96 | h2. 1.7 install passenger (application server) |
||
97 | |||
98 | <pre>gem install passenger |
||
99 | passenger-install-apache2-module</pre> |
||
100 | |||
101 | 4 | Jan Niggemann (redmine.org team member) | h2. 1.8 configure apache |
102 | 23 | Jan Niggemann (redmine.org team member) | |
103 | 1 | Jan Niggemann (redmine.org team member) | Put this in @/etc/apache/mods-available/passenger.load@ (remember to adjust the paths if necessary). |
104 | 4 | Jan Niggemann (redmine.org team member) | <pre>LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-4.0.46/ext/apache2/mod_passenger.so</pre> |
105 | 23 | Jan Niggemann (redmine.org team member) | |
106 | 1 | Jan Niggemann (redmine.org team member) | And put this in @/etc/apache/mods-available/passenger.conf@ (remember to adjust the paths if necessary). |
107 | <pre>PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-4.0.46 |
||
108 | PassengerRuby /usr/local/bin/ruby |
||
109 | PassengerDefaultUser www-data</pre> |
||
110 | |||
111 | |||
112 | 3 | Jan Niggemann (redmine.org team member) | h2. 1.9 activate module |
113 | |||
114 | <pre>a2enmod passenger</pre> |
||
115 | 2 | Jan Niggemann (redmine.org team member) | |
116 | 1 | Jan Niggemann (redmine.org team member) | }} |
117 | 2 | Jan Niggemann (redmine.org team member) | |
118 | 1 | Jan Niggemann (redmine.org team member) | h1. Chapter 2: Install redmine |
119 | 2 | Jan Niggemann (redmine.org team member) | |
120 | {{collapse(Read chapter 2) |
||
121 | |||
122 | 26 | Jan Niggemann (redmine.org team member) | h2. 2.1 download redmine |
123 | 2 | Jan Niggemann (redmine.org team member) | |
124 | Get latest zip from "here":http://www.redmine.org/projects/redmine/wiki/Download and unpack to /opt/redmine |
||
125 | |||
126 | 16 | Jan Niggemann (redmine.org team member) | h2. 2.2 further prepare the system |
127 | 18 | Andrew Tropin | |
128 | 19 | Maik Nergert | Note: Installing @libmagickwand-dev@ installs a lot of packages (depends / recommends) |
129 | 18 | Andrew Tropin | Note: If you have bundle install error then you may try to purge, then install *-dev packages |
130 | 4 | Jan Niggemann (redmine.org team member) | <pre>gem install bundler mysql2 |
131 | 2 | Jan Niggemann (redmine.org team member) | apt-get install libmagickwand-dev libmysqlclient-dev |
132 | cd /opt/redmine |
||
133 | 4 | Jan Niggemann (redmine.org team member) | bundle install --without postgresql</pre> |
134 | 2 | Jan Niggemann (redmine.org team member) | |
135 | h2. 2.3 create database |
||
136 | |||
137 | <pre>create database redmine character set utf8; |
||
138 | 4 | Jan Niggemann (redmine.org team member) | create user 'redmine'@'localhost' identified by 'XXX'; |
139 | 1 | Jan Niggemann (redmine.org team member) | grant all privileges on redmine.* to 'redmine'@'localhost'; |
140 | </pre> |
||
141 | |||
142 | |||
143 | h2. 2.4 configure DB-connection |
||
144 | 2 | Jan Niggemann (redmine.org team member) | |
145 | 6 | Jan Niggemann (redmine.org team member) | Put this in /opt/redmine/config/database.yml |
146 | <pre>production: |
||
147 | adapter: mysql2 |
||
148 | database: redmine |
||
149 | host: localhost |
||
150 | 2 | Jan Niggemann (redmine.org team member) | username: redmine |
151 | password: XXX</pre> |
||
152 | 1 | Jan Niggemann (redmine.org team member) | |
153 | h2. 2.5 generate a session store secret |
||
154 | |||
155 | <pre>rake generate_secret_token</pre> |
||
156 | |||
157 | h2. 2.6 prepare database / create tables |
||
158 | 2 | Jan Niggemann (redmine.org team member) | |
159 | 1 | Jan Niggemann (redmine.org team member) | <pre>RAILS_ENV=production rake db:migrate</pre> |
160 | |||
161 | 4 | Jan Niggemann (redmine.org team member) | h2. 2.7 set filesystem permissions |
162 | |||
163 | <pre>cd /opt/redmine |
||
164 | mkdir tmp tmp/pdf public/plugin_assets |
||
165 | chown -R www-data:www-data files log tmp public/plugin_assets |
||
166 | 1 | Jan Niggemann (redmine.org team member) | chmod -R 755 files log tmp public/plugin_assets |
167 | </pre> |
||
168 | 4 | Jan Niggemann (redmine.org team member) | |
169 | 24 | Anonymous | h2. 2.8 test if it works |
170 | 5 | Jan Niggemann (redmine.org team member) | |
171 | 24 | Anonymous | Redmine 2.x.x |
172 | <pre>ruby script/rails server webrick -e production</pre> |
||
173 | |||
174 | Redmine 3.x.x |
||
175 | 3 | Jan Niggemann (redmine.org team member) | <pre>bundle exec rails server webrick -e production</pre> |
176 | |||
177 | Now go to http://localhost:3000 and see redmine in action. |
||
178 | |||
179 | }} |
||
180 | |||
181 | h1. Chapter 3: Configure apache and passenger |
||
182 | |||
183 | In this guide, we deploy to a sub-URI. Read other guides if you want a name-based virtual host configuration. |
||
184 | 1 | Jan Niggemann (redmine.org team member) | |
185 | 3 | Jan Niggemann (redmine.org team member) | {{collapse(Read chapter 3) |
186 | 4 | Jan Niggemann (redmine.org team member) | |
187 | 3 | Jan Niggemann (redmine.org team member) | h2. 3.1 Configure apache (subURI deployment) |
188 | 4 | Jan Niggemann (redmine.org team member) | |
189 | 3 | Jan Niggemann (redmine.org team member) | <pre>ln -s /opt/redmine/public /var/www/redmine</pre> |
190 | 20 | Jan Niggemann (redmine.org team member) | |
191 | 4 | Jan Niggemann (redmine.org team member) | Put this in @/etc/apache2/sites-available/redmine@ |
192 | 1 | Jan Niggemann (redmine.org team member) | Note: The option _RackBaseURI_ is for rails 3, in rails 2 it was called _RailsBaseURI_. It is in no case called _RakeBaseURI_. |
193 | 3 | Jan Niggemann (redmine.org team member) | <pre> |
194 | 19 | Maik Nergert | <Location /redmine> |
195 | RailsEnv production |
||
196 | 4 | Jan Niggemann (redmine.org team member) | RackBaseURI /redmine |
197 | 3 | Jan Niggemann (redmine.org team member) | Options -MultiViews |
198 | 4 | Jan Niggemann (redmine.org team member) | </Location> |
199 | </pre> |
||
200 | |||
201 | Restart apache, test if http://yourhost.com/redmine is working, rejoice if it is :-) |
||
202 | 3 | Jan Niggemann (redmine.org team member) | |
203 | 1 | Jan Niggemann (redmine.org team member) | 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@. |
204 | |||
205 | }} |