-
Notifications
You must be signed in to change notification settings - Fork 0
Installation von eScience unter Windows
Oliver Skawronek edited this page Aug 25, 2015
·
3 revisions
Auf dieser Seite wird die Installation von eScience und dessen Abhängigkeiten beschrieben. Das verwendete System ist Windows 7 und Ruby 1.9.3, 32-Bit-Version.
- Bei der Installation sind stets Leerzeichen in den Pfaden zu vermeiden. Eine Installation nach
C:\Program Files (x86)\RubyoderC:\Program Files (x86)\ImageMagickist daher unbedingt zu vermeiden. Es wird empfohlen Ruby in das Hauptverzeichnis, bspw. unterC:\Ruby, zu installieren. - Bei externen Abhängigkeiten, bspw. ImageMagick und iconv, ist auf die "Bittigkeit" zu achten. Hier wird die Installation eines 32-Bit Rubys beschrieben, entsprechend müssen die 32-Bit-Versionen der Abhängigkeiten heruntergeladen werden.
- Christian Reichmann empfiehlt Ruby 2.1.1 zu installieren. Die hier verwendete Ruby-Version ist jedoch 1.9.3. Mit der version 1.9.3 lässt sich Problemlos das Gem ruby-debug-ide installieren, welches für u. a. für Apatana Studio benötigt wird, um Ruby-Code zu debuggen (Anweisungen durchsteppen, Variablen inspezieren, Ausdrücke im aktuellen Kontext auswerten lassen, etc.)
- Unter Windows sind Änderungen von Umgebungsvariablen in der geöffneten Konsolen (und Programmen) nicht sichtbar. Nur Konsolen, die nach der Änderung gestartet werden, sehen die aktuellen Werte der Umgebungsvariablen.
- Die Konsole sollte als Administrator ausgeführt werden (Ausführen ->
cmd-> Rechtsklick -> Als Administrator ausführen), um Probleme mit Zugrifssberechtigung auf Ordner zu vermeiden.
Docsplit wird benutzt, um aus Exel-Sheets Thumbnails (gepatchte Attachment#render_to_image Methode) zu generieren. Dazu ruft es intern GraphicsMagick von der Kommandozeile auf. GraphicsMagick versucht dabei das Execel-Sheet als PDF zu konvertieren, braucht hierzu aber die libpfx. Bislang ist es mir nicht gelungen, die libpfx unter Windows zu installieren.
- Ruby 1.9.3, 32-Bit installieren
- Download.
- Zielordner:
C:\Ruby19. Sollte ein anderer Ordner verwendet werden, sind Leerzeichen im Pfad zu vermeiden. - Install Tcl/Tk support (ist vielleicht auch nicht nötig)
- Add ruby executables to your PATH (um Ruby in der Konsole in jeden beliebigen Ordner zu starten)
- DevKit für 1.9.3 installieren
- Download
- Nach
C:\Ruby19\DevKitentpacken - In der Konsole nach
cd C:\Ruby19\DevKitwechseln -
ruby dk.rb initausführen (config.yml sollte richtig konfiguriert sein, wenn Ruby zu PATH hinzugefügt worden ist -
ruby dk.rb installausführen
- Bundler installieren (Bundler verwaltet die abhängigen Gems)
gem install bundler
- Rails installieren (Rails ist das verwendete Web-Framework)
gem install rails
- Rake installieren (Rake ist das verwendete Build-Werkzeug)
gem install rake
- iconv installieren (iconv konvertiert Zeichen zwischen verschiedenen Kodierungen, bspw. ASCII und UTF8)
- inconv kann nicht direkt über
gem install iconvinstalliert werden - Download 32-Bit
- Archiv in
C:\Ruby19\DevKit\mingw\mingw32integrieren gem install iconv
- MySQL installieren (MySQL wird in der Produktivumgebung als Datenbank eingesetzt)
- mysql2 kann nicht direkt über
gem install mysql2installiert werden - Download-Seite mysql-connector-c-6.1.5-win32.zip herunterladen
- Archiv nach
C:\Ruby19\mysqlentpacken - libmysql.dll nach
C:\Ruby19\binkopieren gem install mysql2 -- --with-mysql-dir=C:\Ruby19\mysql
- RMagick installieren (Bibliothek zum Drehen, Zuschneiden, Spiegeln etc. von Bildern)
- Es wird die ältere Version 6.7.7 von ImageMagick benötigt
- Download
- Installieren nach
C:\Ruby19\ImageMagick. Es ist darauf zu achten, keine Leerzeichen im Pfad zu verwenden.
- Add application direcotry to your system path
- Install development headers and libraries for C and C++
- Mit
convert --versiondie Version testen. Sollte Invalid drive specification bzw. Ungültige Laufwerksangabe ausgegeben werden, dann wird das Windows-eigene convert genutzt. Lösung: In der Variablen Path den Ordner zu ImageMagick am Anfang setzen, so dass zuerst im ImageMagick-Ordner nach convert gesucht wird. gem install rmagick --platform=ruby -- --with-opt-dir=C:\Ruby19\ImageMagick
- Xpdf installieren (enthält für das Gem Docsplit den Befehl pdfinfo)
- Download
- Archiv-Ordner
bin32entpacken nachC:\Ruby19\xpdf -
C:\Ruby19\xpdfzur Path-Variablen hinzufügen - Testen mit
pdfinfo -v
- GraphicsMagick installieren (enthält für das Gem Docsplit den Befehl gm)
- Download
- Installieren nach
C:\Ruby19\GraphicsMagick - Update executable search path auswählen
- Testen mit
gm -version
- GhostScript installieren (wird von GraphicsMagick benötigt)
- Download
- Installieren nach
C:\Ruby19\gs
- GnuWin file installieren (wird von Docsplit benötigt, um den MIME-Type einer Datei auszulesen)
- Download
- Archiv-Ordner
binundshare/miscentpacken nachC:\Ruby19\file -
Abhängigkeiten herunterladen und den Archivordner
binebenfalls nachC:\Ruby19\fileentpacken. Es befinden sich danach file.exe und alle DLLs im selben Ordner. - Umgebungsvariable MAGIC auf
C:\Ruby19\file\magicsetzen - Getestet werden kann file mit
file --mime foo.pdf. Sollteapplication/pdfauslesen.
- Optional: ruby-debug-ide installieren
- Wird u. a. für Apatana Studio und NetBeans zum Debugging von Ruby-Code benötigt
gem install ruby-debug-ide
- Im Gemfile eventmachine ändern
- Die Verfügbare Version des Gems eventmachine lässt sich nicht mit
gem install eventmachineinstallieren. Eine funktionsfähige Version kann jedoch vom Git-Repository bezogen werden. - In der eScience-Datei Gemfile, die sich im Projekt-Verzeichnis befindet, ist folgende Zeile zu ergänzen:
gem "eventmachine", :git => 'https://github.com/eventmachine/eventmachine.git'
- Bundler starten
- In das eScience-Verzeichnis wechseln
bundle install- Die Abhängigen Gems können anschließend durch
bundle updateaktualisiert werden
- Secret Token generieren
- In das eScience-Verzeichnis wechseln
bundle exec rake generate_secret_token
- Datenbank erstellen
- Starten des MySQL-Servers
- Anlegen der DB escience:
mysql -u root -p -e "create database escience character set utf8" - Anlegen des Benutzers escience:
mysql -u root -p -e "grant all privileges on escience.* to 'escience'@'localhost' identified by 'test'" - Danach sollte sich der Benutzer escience mit dem Passwort test auf der Datenbank escience verbinden können.
- Datenbank in eScience konfigurieren
- Im Unterverzeichnis config befindet sich die Datei database.yml.example. Sie muss kopiert und angepasst werden:
copy config\database.yml.example config\database.yml - Für die Production-Umgebung sollte die Konfiguration wie folgt angepasst werden:
development:
adapter: mysql2
database: escience
host: localhost
username: escience
password: "test"
encoding: utf8- Tabellen anlegen und mit Werte befüllen
-
rake db:migrate RAILS_ENV="production"(Redmine-Tabellen anlegen) -
rake db:migrate_plugins RAILS_ENV="production"(eScience-Tabellen und Spalten anlegen) -
rake db:seed RAILS_ENV="production"(mit initialen Werten befüllen)
- Privates Projekt für den Admin anlegen
- Das Anlegen erfolgt über die Konsole
$ rails console
> admin = User.first
> proj = Project.new(:name => "admin", :is_public => false, :is_private_project => true)
> proj.identifier = Project.next_identifier
> proj.save!
> admin.private_project = proj
> admin.save!
- Eine Active-Record-Objekt, hier
adminundproj, kann mitobj.valid?geprüft werden, ob es alle Constraints erfüllt. Fallsfalsezurückgegeben wird, dann können mitobj.errors.messagesdie Fehlernachrichten abgefragt werden. Kommt bspw.=> {:confirm=>["must be accepted"]}, dann kann entsprechend darauf reagiert werden, indemadmin.confirm = truegesetzt wird.
- eScience starten
-
rails s -p 3000 -b 127.0.0.1startet eScience auf dem Port 3000 - Im Browser kann die Plattform unter http://127.0.0.1:3000 aufgerufen werden
- Der Login für den Administrator ist admin@example.net (Login) und admin (Passwort)