Alternative Installation Types
UNOFFICIAL - THIS PAGE IS COMMUNITY MAINTAINED
WARNING: Users should have advanced knowledge and know how to deal with the security risks with using any of the below information on this page
OpenRefine team does not have the capacity to maintain various packaging and installation types beyond the
official Windows, Linux, Mac installers that we provide per release.
We do however encourage and allow the community to maintain alternative installation types and document them on this page and sub pages.
(Footnote: historical issue #933)
The OpenRefine project team seems to have recently begin providing builds for every merged commit against master branch:
https://github.com/OpenRefine/OpenRefine-snapshot-releases
A challenge is one of adding data into the mix eg a set of OpenRefine example projects accessible from an OpenRefine container, eg a database preconfigured with some example database tables, eg IPython Notebook pointing to a directory containing example notebooks.
If someone wanted a lite container for running OpenRefine, a multistage Dockerfile might be the way to do this, compiling OpenRefine against JDK and then copying OpenRefine files over (which ones?) into the container running a JRE.
Extra RUN commands could be added to remove build folders/files and only leave the classes/libs. OpenRefine when it is compiled (refine build
command) needs the JDK, but after compiled and to run it, only needs JRE. "Standard Java Web App Stuff".
OpenRefine - latest release (link fixed now)
OpenRefine - recent build from github (link fixed now)
An example of how to create a dockerfile that adds extensions to any of these base builds might also be useful for cut-and-paste tinkerers such as myself...
Here is @psychemedia's example that uses a release:
FROM maven:3.6.0-jdk-8-alpine
MAINTAINER tony.hirst@gmail.com
ARG RELEASE=3.1
ENV RELEASE=$RELEASE
RUN wget --no-check-certificate https://github.com/OpenRefine/OpenRefine/releases/download/$RELEASE/openrefine-linux-$RELEASE.tar.gz
RUN tar -xzf openrefine-linux-$RELEASE.tar.gz && rm openrefine-linux-$RELEASE.tar.gz
RUN mkdir /mnt/refine
VOLUME /mnt/refine
EXPOSE 3333
CMD openrefine-$RELEASE/refine -i 0.0.0.0 -d /mnt/refine
#Reference:
##to peek inside the container:
# docker run -i -t psychemedia/openrefinetest /bin/bash
##to run:
# docker run --rm -d -p 3333:3333 --name openrefine psychemedia/openrefinedemo
You might also be interested in @psychemedia's other experiments with containerization:
http://blog.ouseful.info/2013/12/02/packaging-software-for-distance-learners-vms-101/
http://blog.ouseful.info/2014/05/15/confused-again-about-vm-ecology-i-blame-not-blogging/
http://blog.ouseful.info/2014/12/10/thoroughly-confused-about-student-vms-docker/
http://blog.ouseful.info/2015/01/14/using-docker-to-build-course-vms/
- OpenRefine can be run in a MyBinder container, proxied via a Jupyter-server-proxy, using nbopenrefineproxy
- See Also: Jupyter sub page