Redmine Installation unter Gentoo
Viele kleine, aber feine Projektmanagement-Tools gibt es – einige davon bilden genau ab, was man in OpenSource-Projekten braucht und will. Bisher war Trac der erste Name der bei dem Stichwort gefallen ist, aber einige Projekte (darunter der Lighty oder auch die Summer of Code Projekte auf GentooExperimental.org) setzen auf Redmine – durchaus zu Recht, wie ich finde.
Die folgenden Schritte beschreiben die Installation von Redmine unter Gentoo Linux, “serviert” wird das Redmine von Apache via Mongrel, die Daten landen in einer MySQL-Datenbank.
1. Herunterladen eines aktuellen Tarballs oder Checkout aus dem SVN Repository.
# svn co http://redmine.rubyforge.org/svn/branches/0.8-stable redmine-0.82. Erstellen einer MySQL-Datenbank und Berechtigen eines Benutzers auf die Datenbank
3. Erstellen und Anpassen der Datenbankkonfiguration in der Datei config/database.yml:
production: adapter: mysql database: redmine host: localhost username: <strong>user</strong> password: <strong>password</strong> encoding: utf8
4. Initialisieren der Datenbank
# rake db:migrate RAILS_ENV="production"5. Importieren der Default-Konfiguration
# rake redmine:load_default_data RAILS_ENV="production"6. Benutzer und Gruppe “redmine” (oder anderweitig benamst, je nach Belieben) anlegen und wie folgt berechtigen:
# mkdir tmp # chown -R redmine:redmine files log tmp # chmod -R 755 files log tmp
7. Bearbeiten der Email-Konfiugration in der Datei config/email.yml.
8. Mongrel konfigurieren:
# mongrel config: mongrel_rails cluster::configure -e production -p 8000 -N 3 -c /var/www/redmine-0.8 --user redmine --group redmine9. Berechtigungen im Verzeichnis tmp/pids prüfen, sollten die nicht passen zeigt sich Mongrel bockig.
10. Mongrel starten, wenn sich Mongrel wider Erwarten doch bockig zeigt in log/production.log nachschauen wo es hapert.
# mongrel_rails cluster::start11. Dem Apache beibringen, dass er gefälligst auf Mongrel zugreifen soll, wenn jemand was vom redmine-VirtualHost möchte. Das kann z.B. so ausschauen:
<VirtualHost *:80> ServerAdmin webmaster@localhost ServerName redmine.localdomain RewriteEngine On # Redirect all non-static requests to cluster RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f RewriteRule ^/(.*)$ balancer://redminecluster%{REQUEST_URI} [P,QSA,L] </VirtualHost> <Proxy balancer://redminecluster> BalancerMember http://127.0.0.1:8000 BalancerMember http://127.0.0.1:8001 BalancerMember http://127.0.0.1:8002 </Proxy>
(Das ganze gehört in einen VirtualHost, die BalancerMember noch in eine “Proxy balancer://redminecluster” Direktive – Wordpress schluckt die Tags – kann wer ein schickes Plugin empfehlen, dass sich für die Anzeige von Konfigurations- und Code-Schnipseln gut eignet?)
12. Um den Apache zum mitspielen zu bewegen, prüfen ob die Proxy-Module mit kompiliert wurden (USE=”proxy proxy_balancer proxy_connect proxy_http”) sowie das Laden der Proxy-Module konfigurieren. In /etc/conf.d/apache2 dazu APACHE2_OPTS=”-D SSL -D NAGIOS -D PHP5 -D PROXY” aktivieren. Apache starten, aufs Redmine zugreifen – fertig.
Wenn man mag, dann gilt es noch die Schritte 13 und 14 zu beachten:
13. Sicherstellen, dass die Datenbank sowie die Konfigurationsdateien wie auch der Attachments-Ordner (files/) gesichert werden.
14. Über ein Init-Skript sicherstellen, dass Mongrel auch nach einem Reboot gestartet wird und das Redmine zur Verfügung steht. Sieht zugegeben “komisch” aus, aber funktioniert :P Wer als Ruby on Rails-Experte Verbesserungsvorschläge hat – Ihr seid eingeladen ;)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | -- /etc/init.d/redmine -- #!/sbin/runscript start() { ebegin "Starting mongrel_cluster [redmine]" cd /var/www/redmine && mongrel_rails cluster::start eend $? $"Failed to start redmine" } stop() { ebegin "Stopping mongrel_cluster [redmine]" cd /var/www/redmine && mongrel_rails cluster::stop eend $? $"Failed to stop redmine" } |
… und schon fertig ;)
PS: Wer Redmine über eine HTTPS-Verbindung anbieten will, der sucht noch Folgende Ergänzung zur Apache-Konfiguration:
RewriteEngine On
# Redirect all non-static requests to cluster
RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f
RequestHeader set X_FORWARDED_PROTO 'https'
RewriteRule ^/(.*)$ balancer://redminecluster%{REQUEST_URI} [P,QSA,L]
Fertig ;)
Trackbacks & Pingbacks
-
Tobias Scherbaum » wp-syntax
pingbacked Posted 18. February 2009, 6:14 pm
[...] ich mir die alten Artikel nochmal an (lies: nie) – für den Moment hab ich nur den Artikel “Redmine Installation unter Gentoo” angepasst. Noch ein bisschen was hübscher gemacht werden will es, aber für den Anfang [...]
thx :D
“RequestHeader set X_FORWARDED_PROTO ‘https’ ”
hatte mir gefehlt :) danke!