OwnYourData auf Synology

Seit einer Woche habe ich ein NAS (Synology DS1517+) und ein für mich besonders interessantes Feature ist die Möglichkeit darauf Docker-Container auszuführen. Gleichzeitig hat unser Jüngster (2½ Jahre alt) nun sein eigenes Zimmer und ich wollte wissen, ob er dort auch wirklich durchschläft. Unsere Freunde von Gonimo.com haben einen tollen Online-Babymonitor entwickelt und sogar ein eigenes Feature für uns eingebaut, um den gemessen Geräuschpegel in einem OwnYourData Datentresor mitzuprotokollieren. Zur Visualisierung der gesammelten Daten gibt es die OYD-Gonimo App und in diesem Blogpost beschreibe ich das Setup, um in der Nacht den Geräuschlevel im Schlafzimmer unseres Sohnes mit einem Android-Phone zu messen und im Datentresor aufzuzeichnen.

Folgende Komponenten verwende ich dafür:

Inhalt

  1. Docker auf Synology installieren
  2. OwnYourData Images von Dockerhub herunterladen und starten
  3. Datentresor und OYD-Gonimo App starten
  4. Reverse Proxy & Zertifikate einrichten
  5. Gonimo am Android Smartphone starten
  6. Ergebnisse ansehen

Docker auf Synology installieren

Als erstes muss Docker installiert werden. Dazu öffne ich den DiskStation Manager (DSM) der Synology im Browser und gehe ins Package Center. Unter Utilities > Third-party findet sich ein Eintrag von Docker und dort klicke ich auf Install.

OwnYourData Images von Dockerhub herunterladen

Als nächstes starte ich Docker und unter Image lade ich folgende 2 Images herunter:

  • Datentresor: https://hub.docker.com/r/oydeu/oyd-pia/
  • OYD-Gonimo App: https://hub.docker.com/r/oydeu/app-gonimo/

Sind die beiden Images heruntergeladen, wähle ich sie jeweils aus und klicke auf Launch, um sie zu starten.

Datentresor und OYD-Gonimo App starten

Als nächstes öffnen wir den Datentresor und die OYD-Gonimo App. Dazu muss ich den vergebenen Port herausfinden, der unter Container > {Auswahl} > Details > Local Port angegeben ist.

In meinem Fall sind die Adressen:

  • Datentresor: http://192.168.1.134:32769
    (der Port wird dann im Schritt 4 Reverse Proxy benötigt)
  • OYD-Gonimo App: http://192.168.1.134:32768
    (diese Adresse wird dann im Schritt weiter unten benötigt)

Als erstes öffne ich den Datentresor (Username: admin, Password: admin) und registriere dort die OYD-Gonimo App:

Standardmäßig werden Apps unter der Onlineadresse https://{app}.oydapp.org ausgeführt. Für sensible Daten möchte ich, dass aber nicht nur die Daten, sondern auch die Visualisierung bei mir daheim ausgeführt wird. Daher kopiere ich die Link-Adresse die bei Open angezeigt wird und ändere sie, sodass ich die OYD-Gonimo App auf der Synology aufrufen kann.

Die ursprüngliche Adresse war bei mir:

https://gonimo.oydapp.eu/?PIA_URL=http%3A%2F%2F192.168.1.134%3A32769&APP_KEY=eu.ownyourdata.gonimo&APP_SECRET=AiJ2n10RhqGLdBE24uOg


und den ersten Teil https://gonimo.oydapp.eu/ ändere ich auf die oben notierte Adresse der OYD-Gonimo App:

http://192.168.1.134:32768/?PIA_URL=http%3A%2F%2F192.168.1.134%3A32769&APP_KEY=eu.ownyourdata.gonimo&APP_SECRET=AiJ2n10RhqGLdBE24uOg

Die so erstellte Adresse füge ich nun in die Adressleiste meines Browsers ein und öffne die OYD-Gonimo App. Dort gehe ich auf die Seite Datenquellen und kopiere mir den Befehl, um den Online Babymonitor Gonimo.com für die Speicherung der Daten in meinen Datentresor zu konfigurieren.

Reverse Proxy & Zertifikate einrichten

In diesem Schritt müssen nun einige Konfigurationen vorgenommen werden, damit sich die Gonimo.com Webapp auf einem Android Handy mit dem OwnYourData Datentresor verbinden kann. (iOS Devices werden derzeit leider noch nicht unterstützt, sollen dann aber mit Safari in iOS 11 funktionieren.)

Dazu richte ich zuerst einen Reverse Proxy ein, damit der Datentresor über https erreichbar ist. Im Control Panel unter Application Portal > Reverse Proxy lege ich einen Eintrag wie im Screenshot unten dargestellt an. Der Hostname unter Destination muss dabei natürlich mit der eigenen IP Adresse ersetzt werden.

Damit ist der Datentresor nun unter https://{lokale Synology IP}:8080 erreichbar.

Den Schritt zum Einrichten eines Zertifikats musste ich nachträglich einfügen, da der Browser des (bereits alten) Android Smartphones das Default-Zertifikat von Synology nicht akzeptiert hat. (Ein Test am Desktop mit einem aktuellen Chrome Bowser (v59) hat das Zertifikat anstandslos akzeptiert.)

Dazu gehe ich im Control Panel auf Security > Certificate und erstelle mit Add ein neues Self-signed Certificate für die verwendete IP Adresse. Mit Configure weise ich dann dem Port 8080 dieses Zertifikat zu.

Gonimo am Android Smartphone starten

Jetzt verbinde ich das Android Smartphone mit meinem PC via USB und öffne am Smartphone im Chrome Browser die Seite „https://app.gonimo.com“. Am PC öffne ich ebenfalls den Chrome Browser und dort die Entwicklertools > Remote devices > das via USB verbundene Smartphone > den apps.gonimo.com Tab > Inspect > Console und füge den aus Schritt 3 Datentresor und OYD-Gonimo App starten kopierten Befehl der OYD-Gonimo App > Datenquellen kopierten Befehl ein.

Anmerkung: das Mikrofon des Alcatel One Touch benötigt einen geringeren Schwellenwert, damit es bei Geräuschen anschlägt; ich habe daher im eingefügten Befehl den Wert für threshold von 0.3 auf 0.01 reduziert.

Nachdem dieser Wert für die Webseite gesetzt ist, klicke ich am Smartphone auf Baby und dann Start. Man kann das Smartphone nun vom PC trennen und zum Beispiel ins Kinderzimmer legen. Die Webseite schickt ab jetzt immer, wenn in einem 5 Sekunden Intervall ein Geräuschpegel größer als 0.01 erreicht wird, eine Nachricht mit dem aktuellen Zeitstempel und dem Geräuschpegel an den Datentresor. Am nächsten Morgen schließt man die Webseite im Browser und damit stoppt die Aufzeichnung. Bei der nächsten Verwendung muss man nur mehr die Webseite am Smartphone öffnen – keine Verbindung via USB und setzen der Werte ist mehr notwendig, da alle Informationen im Local Storage der Webseite gespeichert bleiben.

Ergebnisse ansehen

Am nächsten Morgen kann ich dann die Aufzeichnungen in der OYD-Gonimo App betrachten. Ich öffne dazu die OYD-App unter der Adresse die ich im Schritt 3 Datentresor und OYD-Gonimo App starten erstellt habe und sehe unter Auswertungen den Verlauf des Geräuschpegels in der Nacht.

Er ist um 8 Uhr eingeschlafen, hatte ein ruhige Nacht, aber bald nach 5 Uhr früh sind er und seine Brüder aufgewacht…

Ausblick

Mit dem hier beschriebenen Setup habe ich ein zusätzliches Anwendungsfeld für meine Synology beschrieben. Zugegeben ist die Installation für Endanwender im Moment zu schwierig, und in Zukunft möchte ich daher OwnYourData als eigene App im Synology Package Center anbieten. Die Installation soll dann so einfach wie jede andere Anwendung sein und mit einem einzigen Klick erfolgen. Falls dich das interessiert und du bestimmte Apps schon vorab verwenden möchtest, schreib mir ein Email oder hinterlasse einen Kommentar unter diesem Artikel!

Veröffentlicht in Blog

Einbrüche in Österreich – Kombinierte Nutzung von öffentlichen und privaten Daten

Mitte des Monats war ich auf einer Veranstaltung des Data Market Austria und besonders ein Vortrag von Clara Landler ist mir im Gedächtnis geblieben. Sie sprach unter anderem über das Spektrum der verschiedenen Daten, wie in der Info-Grafik von ODI dargestellt. Eingezeichnet sind dabei die Bereiche, in denen das Open Data Portal (öffentliche Daten / open data) und OwnYourData (private Daten / closed data) tätig sind.

 

Für mich ergab sich dadurch die Frage: Ist es möglich diese Bereiche miteinander zu verbinden? Eine mögliche Anwendung fand sich kurz später in einem Gespräch, bei dem die Idee für einer App mit Einbruchswarnungen aufkam. Ein sehr guter Indikator für einen Einbruch ist, wenn kurz zuvor in der Umgebung bereits eingebrochen wurde. Einbrecher suchen sich anscheinend ein vielversprechendes Zielgebiet aus und schlagen dann mehrfach zu. Kurz erklärt soll die App so funktionieren: ein Benutzer legt seine Adresse im OwnYourData Datentresor ab (= private Information) und für diese Adresse wird täglich überprüft, ob in der Umgebung ein Einbruch stattgefunden hat (=öffentliche Information). Ist das der Fall, wird der Benutzer über den Einbruch in der Nachbarschaft informiert und es können ggf. zusätzliche Vorsichtsmaßnahmen getroffen werden.

Eine erste Recherche zur Verfügbarkeit von Einbruchdaten in Österreich auf data.gv.at und opendataportal.at ergab aber leider keine Ergebnisse. Lediglich auf der Seite des Innenministeriums gibt es die Polizeiliche Kriminalstatistik Österreich die aber nur Daten der vergangenen Jahre auflistet und dort aggregiert auf Bundesland-Ebene. Also ging ich zur nächsten Polizeidienststelle – in meinem Fall in Bad Vöslau – und erkundigte mich dort, welche Daten bei Einbrüchen erhoben werden. Ich bekam die Information, dass solche Daten geographisch verortet sofort nach dem Eingang einer Anzeige ans Innenministerium weitergeleitet werden.

Ausgestattet mit dem Wissen, dass die Information prinzipiell vorhanden ist, setzte ich die Suche nach öffentlich verfügbaren Einbruchsdaten in Österreich fort. Meine nächste Station war das Forum Informationsfreiheit und deren Webseite FragDenStaat.at. Sehr schnell kann man dort offizielle Anfragen an Behörden in Österreich stellen und dokumentiert das auch gleichzeitig öffentlich. Meine Anfrage ist unter folgender Adresse verfügbar: https://fragdenstaat.at/anfrage/aktuelle-einbruche-in-osterreich/

Innerhalb von 3 Tagen kam eine Antwort vom Bundeskriminalamt:

… [es werden] keine Informationen über den Ort von Einbrüchen oder versuchten Einbrüchen online zeitnah veröffentlicht …

Hier wiederum kam mir Brigitte Lutz vom Magistrat Wien zur Hilfe und verwies auf das Informationsweiterverwendungsgesetz. Paragraph §1 des Gesetzes lautet

Ziel dieses Bundesgesetzes ist die Erleichterung der Weiterverwendung von Dokumenten öffentlicher Stellen, insbesondere um dadurch die Erstellung neuer Informationsprodukte und -dienste zu fördern.

Mit Hinweis auf dieses Gesetz antwortete ich daher auf die erste Stellungnahme des Bundeskriminalamts und erkundigte mich, ob die Informationen über Einbrüche in den Geltungsbereich des Informationsweiterverwendungsgesetzes fallen. Soweit der aktuelle Stand – sobald es Neuigkeiten dazu gibt, werden ich diesen Blogpost aktualisieren!

An alle Leser aber auch die Frage: Welche weiteren Anwendungen fallen euch ein, um einen Bogen zwischen persönlichen und offenen Daten zu spannen? Bitte schickt Vorschläge an feedback@ownyourdata.eu und wir freuen uns, Anwendungen in diesem Bereich zur Verfügung zu stellen!

Veröffentlicht in Blog
mit getaggt

Spring Talks

Im Frühjahr stehen wieder einige Vortragstermine zu OwnYourData am Programm. Wenn ihr Zeit habt besucht uns auf den folgenden Veranstaltungen:

  • Wissensmanagement Tage Krems: am 25. April um 9 Uhr im Audi-Max der Donau-Uni Krems zum Thema Crowd Intelligence
  • Linuxwochen 2017: am 5. Mai um 13 Uhr im FH Technikum Wien zum Thema Daten im Smart-Home
  • Vienna Data Science Meetup: am 11. Mai um 19 Uhr an der Fakultät für Informatik in der Währinger Straße zum Thema Reproducible Data Science
  • No Spy Konferenz: am 20. Mai im Literaturhaus Stuttgart zum Thema Persönliche Datennutzung
Veröffentlicht in Blog

OwnYourData in den Medien

Diese Woche wurde OwnYourData in verschiedenen österreichischen Medien vorgestellt:

Und ebenfalls waren wir mit der IoT Austria bei den Linux Tagen Chemnitz vertreten – hier gibts den Flyer zum Download.

Verschenkst du deine Daten noch oder hast du schon einen Datentresor?

Jeden Tag erzeugen wir eine riesige Menge an Daten: unterwegs mit dem Auto oder in öffentlichen Verkehrsmitteln, beim Einkaufen, natürlich mit unserem Smartphone und überhaupt immer, wenn wir im Internet sind. Mit dem Datentresor von OwnYourData kannst du dir eine Kopie dieser Daten sicher bei dir speichern. Das folgende Video gibt dir einen Überblick darüber:

Wenn Früchte Daten tragen

RaspberryPi und BananaPi zum Sammeln und Auswerten von Daten.

Zuletzt haben wir beschrieben wie man seinen Datentresor am PC mithilfe von Docker betreiben kann. In diesem Artikel demonstrieren wir nun die Installation des Datentresors und der Raumklima-App auf einem RaspberryPi 3. Die Raumklima-App ermöglicht dabei die Visualisierung von Sensordaten und die Steuerung diverser Aktoren (zB Ein- und Ausschalten eines Ventilators). Zum Erfassen der Sensordaten verwenden wir die Infrastruktur die vom Education-Kit der IoT Austria bereitgestellt wird. Und es gibt ebenfalls ein Video das eine Installation der Raumklima App bei der Quintessenz im Museumsquartier Wien zeigt.

Verwendete Hardware

Folgende Hardwareteile benötigst du, um deine eigene Raumklimasteuerung einzurichten:

  • aktueller RaspberryPi oder BananaPi mit Erweiterung zum Empfang von Sensordaten; die IoT Austria bietet dazu einen vollständig vorkonfigurierten BananaPi an, den wir auch in unserem Demosetup verwenden
    BananaPi

     

  • Sensoren zum Messen des Raumklimas; in unserem Beispiel sind das Sensoren für
    • Temperatur
    • Feuchtigkeit
    • Luftdruck
    • Licht

    Auch hier haben wir in unserem Demosetup wieder Sensoren der IoT Austria verwendet die beim Education Kit mitgeliefert werden.
    sensoren

     

  • Aktoren zur Ansteuerung von Geräten; in unserem Beispiel verwenden wir Verteilersteckdosen die via COAP ein- und ausgeschaltet werden können
    aktoren

     

  • optional kann ein zusätzlicher BananaPi oder RaspberryPi verwendet werden, der getrennt von der Sensorumgebung die OwnYourData Software-Komponenten ausführt; in unserem Beispiel verwenden wir einen BananaPi für die Sensorumgebung und einen RaspberryPi für OwnYourData
    raumklima_hardware

     

Installation

Ausgestattet mit der nötigen Hardware müssen wir als nächstes die unterschiedlichen Softwarekomponenten installieren. Dabei unterscheiden wir 2 Blöcke (unabhängig, ob sie auf 1 oder 2 BananaPi/RaspberryPi installiert sind):

Konfiguration

Zur Konfiguration von smartSarah muss die Datei sarah_hosts.cfg im Verzeichnis /opt/omd/sites/mysite/etc/nagios/conf.d mit den vorhandenen Hosts und Sensoren konfiguriert werden (weitere Infos hier). Nach dem Update muss omd restart durchgeführt werden (weitere Infos auf der Seite von OMD – Open Monitoring Distribution). In Nagios siehst du dann alle eingerichteten Hosts und Sensoren.
nagios

Für die Konfiguration der Raumklima-App müssen nun ebenfalls die Sensoren eingerichtet werden. Erfasse dazu auf der Seite „Datenquelle“ für jeden Sensor die folgenden Attribute:

  • Name: eindeutige Bezeichnung für den Sensor, z.B. Temperatur (Wohnzimmer)
  • URL: Adresse unter der NAGIOS die Sensor Daten im JSON-Format bereitstellt, z.B. http://192.168.1.2/mysite/pnp4nagios/xport/json?host=climateplus_12AB&srv=hum
  • Benutzer: zur Authentifizierung beim Zugriff auf die URL
  • Passwort: zur Authentifizierung beim Zugriff auf die URL
  • Liste: Name der Liste in der die Daten gespeichert werden sollen (der Name muss mit eu.ownyourdata.room beginnen), z.B. eu.ownyourdata.room.temp
  • aktiv: nur Sensoren die diese Option aktiviert haben, werden aufgezeichnet

Hier ein Beispiel mit 4 erfassten Sensoren:
app

Nach der Konfiguration eines Sensors kann mit der Schaltfläche „Importieren“ ein sofortiger Import der vorhandenen Daten gestartet werden. Ansonsten werden die Daten alle 2h aktualisiert.

Einsatz

Nachdem das System aufgebaut und alle Softwareteile installiert und konfiguriert sind, wartet man am besten ein paar Tage, damit einige Daten gesammelt werden. Die übliche Konfiguration erfasst Messwerte alle 10 Minuten und damit kommen pro Tag und Sensor jeweils 144 Messwerte dazu. Mit der Raumklima-App können dann diese Messwert-Reihen miteinander verglichen werden. Wähle dazu unter Auswertungen im Karteireiter „Kurvenvergleich“einen Zeitbereich und die 2 Sensoren die du vergleichen möchtest. Wenn du den Mauszeiger über die Kurve bewegst, werden die genauen Messwerte für die jeweilige Uhrzeit angezeigt.
graph

Eine weitere Anwendungsmöglichkeit für die gesammelten Daten ist das Auslösen von Aktionen beim Überschreiten von Grenzwerten. Dabei wird jede Minute der ausgewählte Sensor auf die konfigurierte Bedingung überprüft und wenn diese Bedingung zutrifft, wird eine vordefinierte Aktion ausgelöst. Im dargestellten Beispiel wird ein Fenster geöffnet und der Ventilator eingeschaltet, wenn die Temperatur über 25°C steigt. Das Fenster wird geschlossen und der Ventilator ausgeschaltet, wenn die Temperatur unter 23°C fällt.
aktoren
In einem der nächsten Artikel werden wir dann beschreiben, wie zusätzliche Daten wie zB eine online verfügbare Außentemperatur, ebenfalls in die Steuerung einbezogen werden können.

Fazit

In diesem Artikel haben wir beschrieben, wie ein mögliches autonomes System zum Sammeln und Nutzen von Sensordaten im eigenen Haus / in der eigenen Wohnung funktionieren kann. Insbesondere der Einsatz von Ein-Platinen-Computern eröffnet interessante Möglichkeiten und betreibt man das hier beschriebene Setting ohne mit dem Internet verbunden zu sein, läuft man auch nicht Gefahr private Daten preiszugeben, oder sonst einem Angriff ausgesetzt zu sein, die solche ständig in Betreib befindlichen IoT Devices zu einem beliebten Ziel von Hackern machen.

Veröffentlicht in Blog

Der neue Datentresor

logo_xmasNoch kurz vor Weihnachten freuen wir uns eine neue Version des Datentresors bereitstellen zu können. Nicole hat das neue Design entwickelt, Michael die Backend-Funktionen angepasst und ganz neu im Team die Firma Fraiss aus Graz das Frontend umgesetzt. Auf unserer Homepage könnt ihr euch entweder ganz schnell einen neuen Datentresor selbst anlegen oder ihr probiert unseren Demo-Datentresor aus.

Hier eine kurze Liste der wichtigsten Änderungen samt Screenshots:

  • Login mit neuer Kopf & Fußzeile
    login
  • Anzeige vorhandener Apps, Installation mit 1 Klick und Verwaltung von App-Anbieter
    welcome apps store
  • Darstellung vorhandener Daten
    daten datensatz
  • Account Seite mit Verlinkung auf Android & iOS App für euren mobilen Datentresor
    account

Mit diesen Neuerungen wünschen wir euch frohe Weihnachten und alles Gute für 2017!

Summer-of-Code Abschluss bei der Vienna Data Science Group

map_metalabWir haben zuvor schon über die Ergebnisse der diesjährigen Summer-of-Code Aktion von OwnYourData berichtet. Am Freitag den 21. Oktober 2016 findet im Metalab die Abschluss-Präsentation im Zuge eines Meetups der Vienna Data Science Group statt.

Wo: Metalab, Rathausstraße 6, 1010 Wien
Wann: Freitag, 21. Oktober 2016, ab 19 Uhr

 

Hier die Ankündigung des Meetups:

Dear Community,

we are proudly announcing our 14th. Knowledegfeed. For those of you joining us for the first time, a short description below.

During these sessions we are inviting specialists presenting their hands-on experience, current project or simply ideas regarding topics related to our field of interest (the reason for this rather wide description is based on the wide scope of data science itself… ;-)). Furthermore this gives you the opportunity to ask our lecturer of the evening questions, discuss your ideas and of course enjoy a beer in company of some interesting folks!

Title: Summary of the results for the famous „Summer Of Code“

Description: This will be a summary on the results for our beloved „Summer Of Code“. Just to remind you, OwnYourData is an innovative nonprofit association providing you with a secure online-environment and tools, to analyse your data on the spot. As a result of a fruitful collaboration with us we commenced the „Summer Of Code“ in July this year.  The aim was to support this great idea and OwnYourData with the development of their platform by working on pre-specified projects, or simply coming up with your own idea. Christoph will be presenting you with the glorious results of these projects, which are listed below:

  1. Security & Vulnerability Assessment of the OwnYourData platform realized by Mr. Max Riedl
  2. Python Tutorial (code available on Git-Hub) realized by Mr. Steven Malin
  3. Enhancement of the Banking-App realized by the gentlemen Roger Gomez and Christoph Fabianek himself

Duration: about 30-45min

Powered by: Christoph FABIANEK has earned his PhD at the Technical University of Vienna in Mathematics. After finishing his MBA in General Management at the Donau University Krems he moved to Frequentis and  works there currently as project manager in the field of public safety and air traffic management.

Juristen sehen Tracking und Userdaten als Entgelt

Am 71. Deutschen Juristentag in Essen schlugen Experten vor, dass auch die Bezahlung mit Daten einen Vertrag „entgeltlich“ machen soll. DerStandard schrieb: „Das hätte in der Rechtssprechung wohl gravierende Konsequenzen. Denn dann könnten Nutzer, die ja für das Produkt bezahlt haben, Haftungsansprüche stellen – etwa dann, wenn Google Maps sie in die Irre geführt hat.“

Das sind die Abstimmungen des Juristentages:

5. Abgrenzung entgeltliche/unentgeltliche Verträge:

Var. a: Erlangt der Anbieter Daten, die ihm vom Nutzer zur Verfügung gestellt wurden oder die er auf andere Weise erhoben hat, so ist stets von einer Gegenleistung (Entgelt) auszugehen.
Abgelehnt 4:26:2

Var. b:  Von einem Entgelt ist nur auszugehen, wenn die Datennutzung aufgrund des Datenschutzrechts nur mit Einwilligung des Betroffenen zulässig ist.
Angenommen 23:7:2

Die Abstimmung (bzw Empfehlung des Juristentages) lässt sich folgendermaßen interpretieren: Wenn bei Services (wie GoogleMaps) keine Zustimmung zu Datenschutzregelungen nötig ist, um das Service nutzen zu können, dann kann man nach Variante b nicht von einem Entgelt-Charakter ausgehen. Anders könnte es aussehen, wenn Cookies genutzt werden, denn hier ist eine „Einwilligung“ (cookie consent) nötig. Da wird dann schon die Abgrenzung schwierig, wenn vom Service die Möglichkeit geboten wird, auf Cookies zu verzichten: für einen Nutzer, der zB per Cookie-Optionen bei den Google-Services aus den Cookies herausoptiert, würde kein Entgelt vorliegen – im Gegensatz zu einem Nutzer, der Cookies zulässt.

Das ist eine spannende Entwicklung, denn es zeigt, dass „Gratisdienste“ mit all dem Datamining nicht wirklich gratis sind. Und es zeigt: deine persönlichen Daten sind wertvoll.

Veröffentlicht in Blog

Ein Container voller Daten

dockerBisher war die Installation der einzelnen Teilen von OwnYourData und Einrichtung der Apps nicht immer leicht. Um diese Situation zu verbessern, bieten wir nun PIA und Apps auch via Docker an. (Docker ist eine bewährte Technologie zur Bereitstellung von Anwendungen in einer isolierten Umgebung.) Die Container stehen auf Dockerhub.com zur Verfügung.

So kannst du die OwnYourData-Container verwenden

Führe die folgenden Schritte durch, um OwnYourData auf deinem Computer auszuführen. (Alternativ kannst du die Container auch in der Cloud installieren – das wird im nächsten Blogeintrag beschrieben.)

  1. Docker installieren
    Hier geht’s zu den Anleitungen für die Installation von Docker auf deinem Computer:

  2. Docker-Konsole starten
    Starte die Docker-Konsole und du siehst folgendes Fenster:
    shellWichtig: notiere die angezeigte IP-Adresse, unter der Docker auf deinem Computer läuft (rot eingerahmt)
  3. PIA starten
    Um OwnYourData zu verwenden benötigst du als erstes die PIA (Personal Information Archive). Führe folgenden Befehl auf der Docker-Konsole aus:

    docker run -p 80:8080 oydeu/oyd-pia

    Warte bis PIA vollständig gestartet ist und folgende Ausgabe (rot eingerahmt) angezeigt wird:

  4. Kontoentwicklungs-App starten
    Als nächstes wird die Kontoentwicklungs-App gestartet. Öffne dazu eine neue Docker-Konsole und führe folgenden Befehl aus:

    docker run -p 3838:3838 oydeu/app-bank

    Anmerkung: die Kontoentwicklungs-App zeigt keine Ausgabe auf der Konsole an
    Kontoentwicklungs-App starten

  5. Kontoentwicklungs-App registrieren
    Zum Registrieren der Kontoentwicklungs-App musst du die folgenden 8 Schritte in der PIA durchführen:

    1. PIA öffnen
      Öffne einen Browser und gib als Adresse die IP-Adresse ein aus Schritt 2 ein; üblicherweise ist das die Adresse 192.168.99.100. Es wird dann der Login Screen der PIA angezeigt:
      PIA im Browser
    2. in PIA einloggen
      Logge dich mit folgenden Daten ein:

      • Benutzername: admin
      • Passwort: admin
    3. Plugin-Seite öffnen
      Öffne die Plugin-Seite indem du im Menü auf „Entitäten“ (1) klickst und dann „Plugin“ (2) wählst.
      Plugin Seite
    4. Plugin registrieren
      Klicke auf der Plugin-Seite die Schalftfläche „Plugin registrieren“
      Plugin registrieren
    5. Manifest einfügen
      Im Dialog der erscheint, füge das folgende Manifest (= Beschreibung der Kontoentwicklungs-App) ein:

      ew0KICAgICAgICAibmFtZSI6IktvbnRvZW50d2lja2x1bmciLA0KICAgICAgICAiaWRlbnRpZmllciI6ImV1Lm93bnlvdXJkYXRhLmJhbmsiLA0KICAgICAgICAidHlwZSI6ImV4dGVybmFsIiwNCiAgICAgICAgImRlc2NyaXB0aW9uIjoidmVyd2FsdGUgZGVpbmUgS29udG9hdXN6w7xnZSIsDQogICAgICAgICJwZXJtaXNzaW9ucyI6WyAiZXUub3dueW91cmRhdGEuaW5mbzpyZWFkIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJldS5vd255b3VyZGF0YS5pbmZvOndyaXRlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJldS5vd255b3VyZGF0YS5pbmZvOnVwZGF0ZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAiZXUub3dueW91cmRhdGEuYmFuazpyZWFkIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJldS5vd255b3VyZGF0YS5iYW5rOndyaXRlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJldS5vd255b3VyZGF0YS5iYW5rOnVwZGF0ZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAiZXUub3dueW91cmRhdGEuYmFuazpkZWxldGUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgImV1Lm93bnlvdXJkYXRhLmJhbmsuZXh0ZW5zaW9uOnJlYWQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgImV1Lm93bnlvdXJkYXRhLmJhbmsuZXh0ZW5zaW9uOndyaXRlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJldS5vd255b3VyZGF0YS5iYW5rLmV4dGVuc2lvbjp1cGRhdGUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgImV1Lm93bnlvdXJkYXRhLmJhbmsuZXh0ZW5zaW9uOmRlbGV0ZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAiZXUub3dueW91cmRhdGEuYmFuay5yZWZlcmVuY2U6cmVhZCIsDQogICAgICAgICAgICAgICAgICAgICAgICAiZXUub3dueW91cmRhdGEuYmFuay5yZWZlcmVuY2U6d3JpdGUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgImV1Lm93bnlvdXJkYXRhLmJhbmsucmVmZXJlbmNlOnVwZGF0ZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAiZXUub3dueW91cmRhdGEuYmFuay5yZWZlcmVuY2U6ZGVsZXRlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJldS5vd255b3VyZGF0YS5iYW5rLmdyb3VwOnJlYWQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgImV1Lm93bnlvdXJkYXRhLmJhbmsuZ3JvdXA6d3JpdGUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgImV1Lm93bnlvdXJkYXRhLmJhbmsuZ3JvdXA6dXBkYXRlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJldS5vd255b3VyZGF0YS5iYW5rLmdyb3VwOmRlbGV0ZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAiZXUub3dueW91cmRhdGEuc2NoZWR1bGVyOnJlYWQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgImV1Lm93bnlvdXJkYXRhLnNjaGVkdWxlcjp3cml0ZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAiZXUub3dueW91cmRhdGEuc2NoZWR1bGVyOnVwZGF0ZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAiZXUub3dueW91cmRhdGEuc2NoZWR1bGVyOmRlbGV0ZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAiZXUub3dueW91cmRhdGEuc2NoZWR1bGVyLmVtYWlsX2NvbmZpZzpyZWFkIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJldS5vd255b3VyZGF0YS5zY2hlZHVsZXIuZW1haWxfY29uZmlnOndyaXRlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICJldS5vd255b3VyZGF0YS5zY2hlZHVsZXIuZW1haWxfY29uZmlnOnVwZGF0ZSIsDQogICAgICAgICAgICAgICAgICAgICAgICAiZXUub3dueW91cmRhdGEuc2NoZWR1bGVyLmVtYWlsX2NvbmZpZzpkZWxldGUiIF0NCn0=
    6. Adresse der Kontoentwicklungs-App eingeben
      Nach dem Einfügen des Manifests, werden die notwendigen Zugriffsberechtigungen (1) angezeigt und es kann die Webadresse der Kontoentwicklungs-App (2) angegeben werden. Füge hier die IP-Adresse aus Schritt 2 weiter oben ein und verwende Port 3838, üblicherweise ist das:

      http://192.168.99.100:3838

      App URL

    7. Eingaben bestätigen
      Bestätige die Berechtigungen und die Webadresse mit der Schaltfläche „Akzeptieren“ – Schritt 3 im Bild oben.
    8. Dialog schließen
      Schließe den Dialog zum Registrieren der Kontoentwicklungs-App mit der Schaltfläche X rechts oben.
      Dialog schließen
  6. Kontoentwicklungs-App öffnen
    Es steht nun in der Liste der Plugins die neue Kontoentwicklungs-App zur Verfügung. Klicke auf den Link „Kontoentwicklung“ und es öffnet sich die App.
    Plugin Liste

    Kontoentwicklungs-App

Zusammenfassung

Docker bietet für OwnYourData eine gute Möglichkeit die einzelnen Komponenten (PIA und Apps) schnell und einfach einzurichten und zu verwenden. In diesem Blogbeitrag wurde beschrieben wie man das auf dem eigenen PC durchführt. In den nächsten beiden Artikeln werden weitere Apps und das Deplyoment auf einem Raspberry PI 3, sowie auf Cloud-Diensten wie sloppy.io oder elastx.se beschrieben.