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 | }} |