Redmine im Tomcat installieren #

Redmine ist ein Werkzeug zur Projektverwaltung - in erster Linie für Software-Entwicklungs-Projekte geeignet.

Redmine ist in Ruby mit dem Framework Ruby on Rails programmiert. Es steht unter der GNU General Public License v2 (GPL).

Hier soll es als Beispiel dienen, wie man auf der Hostsharing-Infrastruktur mit der Tomcat-Option Rails-Anwendungen betrieben kann.

Vorbereitungen #

Zunächst baue und teste ich auf meinem lokalen Rechner eine Java-Webapplikation, die ich später bei Hostsharing installiere.

Ich brauche:

  1. die aktuelle Redmine Version von RubyForge (zur Zeit Version 1.1.1)
  2. die Ruby-/Rails-Infrastruktur mit JRuby auf meinem lokalen Rechner

Software-Pakete #

Zunächst installiere ich als root die Ruby-Infrastruktur:

  aptitude install jruby rubygems

Als Datenbank will ich Postgres nutzen:

  aptitude install postgresql

Eine Postgres-Datenbank mit eigenem Datenbank-User lege ich als User postgres an:

  su - postgres
  createuser -D -S -R -P redmine
  createdb -O redmine -E UTF8 redmine

Webapplikation bauen #

Als normaler User baue ich dann die Web-Applikation zusammen:

Download und entpacken von redmine in /home/user/redmine-n.n.n

  tar xzf redmine-1.1.1.tar.gz
  cd /home/user/redmine-1.1.1

Installation einiger Ruby-Gem-Pakete:

  mkdir /home/user/.gem
  export GEM_HOME=/home/user/.gem
  gem install -v=0.4.2 i18n
  gem install -v=1.0.1 rack
  gem install jruby-openssl
  gem install activerecord-jdbcpostgresql-adapter
  gem install rake

In config/environment.rb habe ich folgende Zeilen eingefügt:

Unmittelbar vor Rails::Initializer.run do |config|

    if RUBY_PLATFORM =~ /java/
       require 'rubygems'
       gem 'activerecord-jdbc-adapter'
       require 'arjdbc'
    end

Direkt hinter Rails::Initializer.run do |config| dann:

    config.action_controller.session = { :key => "_myapp_session", :secret => "ueber-30-zeichen-session-key" }

Dann lege ich die Datei config/database.yml mit folgendem Inhalt an:

    production:
      adapter: jdbc
      driver: org.postgresql.Driver
      url: jdbc:postgresql://localhost/redmine
      encoding: unicode
      username: redmine
      password: mein_geheimnis
      host: localhost
      port: 5432

Jetzt kann ich die Datenbank initialisieren:

    export RAILS_ENV=production
    jruby ~/.gem/bin/rake db:migrate
    jruby ~/.gem/bin/rake redmine:load_default_data

Ein erster Test mit:

    jruby ./script/server -e production

Jetzt sollte Redmine im internen WEBrick-Webserver unter http://localhost:3000 erreichbar sein. Die Anmeldung mit admin/admin kann man schon ausprobieren...

Die letzten Schritte zum Bau der WAR-Datei:

    gem install warbler
    ~/.gem/bin/warble config

Folgendes in der Datei config/warble.rb hinter Warbler::Config.new do |config| anpassen bzw. ergänzen:

    config.dirs = %w(app config lib log vendor tmp extra files lang)
    config.gems += ["activerecord-jdbcpostgresql-adapter", "i18n", "jruby-openssl", "rack"]
    config.gems["i18n"] = "0.4.2"
    config.gems["rack"] = "1.0.1" 

Der letzte Schritt

    ~/.gem/bin/warble

erzeugt eine Datei redmine-1.1.1.war, die ich in redmine.war umbenenne und im Tomcat deploye.

Add new attachment

Only authorized users are allowed to upload new attachments.
« This page (revision-8) was last changed on 28-Apr-2012 13:50 by ThomasBayen