ConedaKOR Installation auf Ubuntu 16.04

Die Installation auf einem Ubuntu 16.04 gelingt besonders leicht, weil die Version des Phusion Passenger Moduls ausreichend aktuell ist. Wie empfehlen diese Installationsvariante nur für erfahrene Systemadminsitratoren. Fertige Installationen lassen sich in Form von VirtualBox VMs herunterladen, siehe dazu: Installation mit VirtualBox Appliance.

Installieren Sie Ubuntu 16.04 und installieren Sie einige Abhängigkeiten:

apt-get install git-core build-essential libmysqlclient-dev \
 libcurl4-openssl-dev ruby-dev libxml2-dev libxslt-dev imagemagick \
 libav-tools zip libapache2-mod-passenger apache2 ruby

Erzeugen Sie den Benutzer einen Benutzer unter dem die Applikation später ausgeführt werden soll und berechtigen Sie ihn:

useradd -m kor
mkdir -p /opt/kor
chown -R kor. /opt/kor

Installieren Sie MySQL und erstellen Sie einen geeigneten MySQL Benutzer, etwa mit:

GRANT ALL ON kor.* TO 'kor'@'localhost' IDENTIFIED BY 'kor';

Installieren Sie elasticsearch und optional neo4j.

Installieren Sie das rubygem bundler:

gem install bundler

Clonen Sie das Github Repository in ein Verzeichnis und checken Sie die gewünschte Version aus:

cd /opt/kor
git clone https://github.com/coneda/kor.git current
cd current
git checkout v2.1.0

Installieren Sie nun die Abhängigkeiten mit bundler. Diese werden in einem separaten Installationsverzeichnis vorgehalten und beinflussen nicht die systemweit installierten Gems:

bundle install --path=/opt/kor/bundle

Erstellen Sie eine Datenbank-Konfiguration aus der mitgelieferten vorlage. Diese muss im Anschluß an Ihre konkrete Datenbank-Server angepasst werden. Wenn Sie mehr erfahren wollen, werfen Sie am besten einen Blick auf die relevante Dokumentation von Ruby on Rails:

cp config/database.yml.example config/database.yml

Erzeugen Sie eine secret-Datei zum Signieren der Cookies:

RAILS_ENV=production bundle exec bin/kor secrets

Erzeugen Sie die Datenbank in MySQL, initialisieren Sie Elasticsearch und erzeugen Sie die Javascript- und CSS-Bibliotheken:

RAILS_ENV=production bundle exec rake db:setup
RAILS_ENV=production bundle exec bin/kor index-all
RAILS_ENV=production bundle exec rake assets:precompile

Starten Sie nun den KOR-Hintergrundprozess:

RAILS_ENV=production bundle exec bin/delayed_job start

Konfigurieren Sie Apache gemäß folgender Vorlage:

<VirtualHost *:80>
  ServerName kor.example.com
  DocumentRoot /opt/kor/current/public

  <Location />
    Require all granted
  </Location>
</VirtualHost>

… und aktivieren Sie das Passsenger Modul:

a2enmod passenger
systemctl restart apache2

Unter http://<Ihre Server IP> erreichen Sie nun die fertige Installation. Die oben verwendete Domain ist nur ein Beispiel und muss durch Ihre eigene ersetzt werden.