iffWebapp - a Software as a Service Plattform

Developer Documentation

Installing iffWebapp and all dependencies

Note:

The iffWebapp source code is not published yet but will be in the near future.

  1. First of all get Python 3 and pip for installing needed packages from PyPI.
  2. Next set up a postgres-Server which stores all information of the software as a service (SaaS) Plattform. After install is complete, create a database with the following SQL-Command CREATE DATABASE iffwebapp; in the psql-Shell.
  3. Install docker. You can find instructions on how to download and install Docker for several operating systems on the official Docker website.
  4. (After that you can clone the iffWebapp Software. You can download it from our GitLab server via git clone ... [1])
  5. Go to src/ and run the command pip install -r requirements.txt to install all required packages via pip.
  6. Go to src/app/service/container_scripts/ and change the variable SERVERNAME to the server name of your docker server.
  7. Edit src/app/static/js/script.js and change the variable api_link to the link of the server API. Leave /api/v1 at the end of the link, for example http://10.211.55.14/api/v1.
  8. Then build the images for your available webapp types and the reverse proxy. Go to fm_nginx in the previously mentioned directory and run ./build_nginx_container.sh. Repeat that step for each webapp type. As an example, go to fm_mediawiki and run ./build_wiki_container.sh.
  9. That’s it. Go back to src/ and simply run python manage.py.

Contact and further information

To contact the author of the project, write an email to Florian Macherey. Below you can download the slides of the talk, which took place at Python BarCamp 2016 in Cologne (Germany) on April 2 and 3, 2016. Please also note the seminar paper which is the base of the project at the end of the page.

Die Beschäftigten des Peter Grünberg Instituts / Jülich Centre for Neutron Science untersuchen in Experimenten und Simulationen die Form und Dynamik von Materialien wie Polymeren, Zusammenlagerungen großer Moleküle und biologischer Zellen sowie die elektronischen Eigenschaften von Festkörpern. Die einzelnen Arbeitsgruppen des Instituts organisieren sich hierzu vermehrt über webbasierte Anwendungen zum kollaborativen Informationsaustausch.

Im Rahmen dieser Seminararbeit wurde eine webbasierte Lösung entwickelt, die das Instanziieren und Verwalten einer erweiterbaren Liste von Webanwendungen sowohl für Administratoren und Administratorinnen als auch für Endanwender und Endanwenderinnen auf eine einfache Weise ermöglicht. Als konkreter Anwendungsfall dieser webbasierten Lösung werden Wikis angeboten, die häufig zum Informationsaustausch von Wissenschaftlerinnen und Wissenschaftlern angefragt werden. Über diese Seminararbeit hinaus ist eine Erweiterung um z. B. Taskboards oder Projektverwaltungen denkbar.

Zunächst wurde ein Konzept entworfen, welches die zuvor genannten Punkte beachtet. Besonderer Wert wurde auf die Anwendung moderner Webtechnologien – sowohl server- als auch clientseitig – gelegt, um eine zukunftsorientierte Entwicklung zu gewährleisten. In einem zweiten Schritt wurde das Konzept realisiert.

/pub/doc/Seminararbeit_FlorianMacherey.pdf
@Mastersthesis{FlorianMacherey2016,
  Title                    = {Entwicklung einer Webapplikation zur Vereinfachung der Umsetzung webbasierter Anwendungen},
  Author                   = {Florian Macherey},
  School                   = {FH Aachen -- University of Applied Sciences},
  Year                     = {2016},
  Type                     = {Seminar Paper},
  Url                      = {https://pgi-jcns.fz-juelich.de/pub/doc/Seminararbeit_FlorianMacherey.pdf}
}
[1]The source code is not yet published.