containers for sensor web services, applications and research @ sensor web conference, münster

22
Containers for Sensor Web Services, Applications and Research Aug 30, 2016 @ Geospatial Sensor Webs Conference, Münster, Germany Daniel Nüst, University of Münster, daniel.nuest@uni- muenster.de

Upload: daniel-nuest

Post on 14-Apr-2017

110 views

Category:

Technology


3 download

TRANSCRIPT

Page 1: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

Containers for Sensor Web Services, Applications and Research

Aug 30, 2016 @ Geospatial Sensor Webs Conference, Münster, Germany

Daniel Nüst, University of Münster, [email protected]

Page 2: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

Agenda

Motivation Containerization (Docker)

Reproducible Research Containers❤

Docker for Geospatial Sensor Webs

Page 3: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

http://www.slideshare.net/gmccance/cern-data-centre-evolution

Pets vs. Cattle

Motivation

Page 4: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

Docker

Page 5: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

Slide by Docker inventor & Docker, Inc. CTO Solomon Hykes, DockerCon 2014

Page 6: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

https://www.docker.com/use-cases

Motivation: mainstream IT use cases Recommendation: Watch the DockerCon

keynote: “15 min. to fix a bug at new job”https://www.youtube.com/watch?list=PLkA60AVN3hh9

gnrYwNO6zTb9U3i1Y9FMY&v=vE1iDPx6-Ok

Page 7: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

Open access

Open access to data

Open access to data and procedures

Reproducibility platforms (identification/citation/credit, viewing, and downloading)

Meta-publications (Nature, Nature Geosciences, Science, …)

Motivation: Open Science

https://openaccessbutton.org/

Missing for reproducibility of computational research: access to and archival of runtime environments

Page 8: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

To cut to the chase...

Who of you can reproduce a scientific analysis conducted 5 years ago today?

Who of you is sure she can start a multi-service demonstrator of a research project that was finished today in 5 years?

Page 9: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

https://github.com/dockerhttps://docker.com

Page 10: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

https://www.docker.com/what-dockerhttps://en.wikipedia.org/wiki/Operating-system-level_virtualizationhttps://youtu.be/ki8CZkutoxQ

Containerization using

kernel features:namespaceslibcontainer, LXCcgroups

Houses vs. Appartments

Docker @ ARM / RaspberryPI !

Page 11: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

Docker basics

Dockerfile

Docker Image

Docker Container

build run

pausestop/killstartlogscpexecrmstats

docker-compose configuration

use n

Docker Container

Docker Container

Docker Container

updown

Docker CLI

Docker Engine

Docker Registry

runpublishautomated builds

Page 12: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

Docker for Reproducible Research

Page 13: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

Executable Research Compendium

Docker logo courtesy of Docker Inc.; Trafic lights Bluemix via Wikimedia Commons; crowbar by Delapouite via game-icons.net; zipper by RRZEIcons, cursor by Subhashish Panigrahi, via Wikimedia Commons;

Page 14: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

http

://o2

r.inf

o/al

mos

t

http://o2r.info/almost

Page 15: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

Docker for Geospatial Sensor Webs

Page 16: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

52°North Helgoland

$ docker run -p 80:8080 52north/helgoland

http://172.17.0.2:8080/#/

$ docker run -p 80:80 geocontainers/52n-helgoland

http://localhost/#/

Differences: BRANCH env var, nginx vs. node, git clone during build (Hub)

Live!

Page 17: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

52°North SOS

Whole (!) Dockerfile based on Debian (unsimplified)

FROM tomcat:9WORKDIR /tmpRUN curl -L -o sos-bundle.zip http://../491-52n-sensorweb-sos-bundle-4-3-7RUN unzip -d sos-bundle sos-bundle.zipRUN cp sos-bundle/*.war $CATALINA_HOME/webapps/52n-sos-webapp.warRUN rm -r *

Command to run image based on Alpine

$ docker run --rm -p 80:8080 geocontainers/52n-sos-alpine# http://localhost/52n-sos-webapp/

docker-compose configuration (SOS + PostGIS DB)

Live!

Page 18: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

52°North SOS on Docker Cloud with AWS EC2”1 Minute Deployment”

Live!

Page 19: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

Docker for Geospatial Projects

https://wiki.osgeo.org/wiki/DockerImageshttp://geocontainers.org

Page 20: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

Docker for Geospatial Sensor Webs

We need to catch up with mainstream ITCollaborate more effectively (prod/dev/research)

Spread software more easily and more DevOps friendly by bringing down requirements to 1 software and installation to 1 command

Quickly (re) create dev, demo, test, production (customer!) environments

Effective deployment of the latest software thin your own infrastructure or in the cloud

http://simpleicon.com/money-7.html

Page 21: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

Docker for Geospatial Sensor Webs - How?

1. Use it! You admins won’t mind. Your work will be easier.

2. Provide and share (!) images and docker-compose files for popular services on Docker Hub (52°North is getting started)https://github.com/Geonovum/smartemission/tree/master/docker/sos52n

3. Keep in mind during implementation (e.g. configurability)

4. Add getting services cloud ready + scalable prominently to all funding efforts

5. Experiment with desktop apps

https://wiki.52north.org/Documentation/Dockerhttps://hub.docker.com/u/52north/

Page 22: Containers for sensor web services, applications and research @ Sensor Web Conference, Münster

Thanks for your attention!

What are your questions?

http://o2r.info/almost

http://o2r.info @o2r_project [email protected]@nordholmen