Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Launching Personium at Home

Avatar for ishiguro-yo ishiguro-yo
September 01, 2020

Launching Personium at Home

Written about serving Home PDS with ARM TinkerBoard.

Avatar for ishiguro-yo

ishiguro-yo

September 01, 2020

Other Decks in Programming

Transcript

  1. Home PDS with ARM board • Home PDS enables you

    to control your data physically. • Save application data onto your hand. • Personium is OSS of PDS implementation. TinkerBoard CPU: Rockchip RK3288 (4core-armv7) RAM: LPDDR3 2GB Storage: SD Card ARM board is low-energy and cheap. TinkerBoard is developed by ASUS. 2
  2. Home PDS Overview Me(taro) service My home *.myhome.example.jp taro.pds.myhome.example.jp app.somecompany.example.co.jp

    App Data application common data installed Load application Load / Save personal data 3
  3. Steps to launch • Set up your board and enable

    docker and docker-compose. • Get your domain. (Fixing FQDN.) • Launch Personium with docker-compose.yml • The guide is here: https://github.com/personium/personium-docker/wiki/How-to- launch-per-cell-unit • *NOTICE* If you use non-x86 (such as armhf) board, you should follow non-x86 specific tasks (written in next slide). • Make an account for administration and ordinal user account. 4
  4. Steps to launch (non-x86 specific) • Build Elasticsearch and ActiveMQ

    docker images manually • Currently, Elasticsearch and ActiveMQ do not have docker images for non-x86 (such as armhf) CPU. • Elasticsearch and ActiveMQ are also written in Java language, so you can build images without compiling from source code. 5
  5. Experiment VPN router TinkerBoard Mobile 4G router • Instead of

    using the home network, I used the mobile network. • Even if you have only mobile network, you can publish your server via VPN. • My FQDN was obtained by using DDNS service. • MyDNS.JP is a convenient DDNS service. • SSL certificate is published by using Let’s encrypt. 6
  6. Screenshot of usage installed Unit manager Application for managing Unit

    of Personium. app-uc-unit-manager.appdev.personium.io 7
  7. Result • Responses were quite slow. • POST __token API

    took 45 seconds per call. • Where is the bottle neck? • Network? • JRE on ARM? – I’ll try more powerful device next time. 8
  8. Conclusion / My thought • Launching Home PDS is achieved.

    • Personium code written in Java is suitable to multiple platforms such as ARM-based machine. • NAS is suitable for use, maybe. • In perspective of Operation, Maintenance, and Security, PDS should be served by creditable platformer rather than served at home. 9