Andy, this version didn't run for me due to "fuseki-server.jar not found" or smth like that. I had to introduce WORKDIR to fix the issue.
Committed my version here: https://github.com/AtomGraph/fuseki-docker/blob/master/Dockerfile On Mon, Nov 5, 2018 at 2:25 PM Andy Seaborne <[email protected]> wrote: > > Sure - will get around to it: > > in the meantime, here is my current working version: > > The area to work on is where/how databases are managed between docker > and host. The issue is efficiency of mmap access for TDB, especially for > non-linux host OS's. I am wondering if VOLUMEs are the way to go. > > Any experiments with that would be helpful. > > Andy > > --------------------------- > > # Basic Fuseki Dockerfile. > > ## To do: > # VOLUME and databases > > FROM java:8-jdk > > LABEL maintainer="The Apache Jena community <[email protected]>" > > ARG VERSION=3.9.0 > ARG SRC=http://central.maven.org/maven2/org/apache/jena/ > ARG BINARY=jena-fuseki-server/${VERSION}/jena-fuseki-server-${VERSION}.jar > > ENV > URL=http://central.maven.org/maven2/org/apache/jena/jena-fuseki-server/${VERSION}/jena-fuseki-server-${VERSION}.jar > ENV BASE=/mnt/apache-fuseki > > ## VOLUME /mnt/ > > RUN mkdir -p $BASE && \ > cd $BASE && \ > curl --silent --show-error --output fuseki-server.jar $URL > > EXPOSE 3030 > > ENTRYPOINT [ "/usr/bin/java", "-jar", "fuseki-server.jar" ] > > ## Command line arguments are those for Fuseki. > CMD [] > > --------------------------- > > > On 03/11/2018 16:42, Martynas Jusevičius wrote: > > Andy, > > > > can we have this WIP Dockerfile on GitHub somewhere? So we could make > > pull requests and such. > > > > Martynas > > On Thu, Oct 11, 2018 at 2:06 PM Andy Seaborne <[email protected]> wrote: > >> > >> The Dockerfile (which is WIP) is for running the "main" (embedded > >> server). My need is deployment as a triplestore service, no direct UI. > >> > >> You could add FUSEKI_HOME, FUSEKI_BASE setting or add including the > >> "webapp" directory. > >> > >> Andy > >> > >> On 10/10/18 12:12, Martynas Jusevičius wrote: > >>> Andy, > >>> > >>> I successfully built an image using your instructions. > >>> > >>> However, I did not succeed in running it: > >>> > >>> $ docker run --rm jena/fuseki --mem //ds > >>> [2018-10-10 11:03:09] Server INFO Dataset: in-memory > >>> [2018-10-10 11:03:09] Server ERROR Can't find resourceBase (tried > >>> webapp, src/main/webapp, /./webapp and /./src/main/webapp) > >>> [2018-10-10 11:03:09] Server ERROR Failed to start > >>> > >>> The double dash in //ds is escaped because I'm running bash on > >>> Windows. Also not sure why you had the -ti option there. > >>> > >>> Is the current directory somehow off? It would probably need an > >>> entrypoint script to be able to output or change it. > >>> > >>> Is the Dockerfile on GitHub somewhere? > >>> On Wed, Oct 3, 2018 at 4:00 PM Andy Seaborne <[email protected]> wrote: > >>>> > >>>> > >>>> > >>>> On 03/10/18 14:58, Martynas Jusevičius wrote: > >>>>> What about VOLUME for data persistence? > >>>> > >>>> WIP! > >>>> Send a suggested modification! > >>>> > >>>>> On Wed, Oct 3, 2018 at 3:51 PM Andy Seaborne <[email protected]> wrote: > >>>>>> > >>>>>> The cycle time on a *nix distribution is long, and has a long tail. > >>>>>> That > >>>>>> in turn can create costs on the project (so if people want step up ...) > >>>>>> > >>>>>> A Dockerfile can be part of the release process. > >>>>>> > >>>>>> A simple Dockerfile is possible - some WIP trying to be minimal: > >>>>>> > >>>>>> --------------------------------------------------- > >>>>>> # Basic Fuseki Dockerfile. > >>>>>> # > >>>>>> # Assumes: > >>>>>> # 1 - fuseki-server.jar > >>>>>> # 2 - log4j.properties > >>>>>> > >>>>>> # Build: docker image build -t jena/fuseki . > >>>>>> # Run: docker run -it --rm jena/fuseki --mem /ds > >>>>>> # Add "-d" to run in the background (no stdout) > >>>>>> > >>>>>> FROM openjdk:8 > >>>>>> > >>>>>> LABEL maintainer="The Apache Jena community <[email protected]>" > >>>>>> > >>>>>> EXPOSE 3030 > >>>>>> > >>>>>> # Place choices of "fuseki-server.jar" and > >>>>>> # "log4j.properties" in the current directory > >>>>>> > >>>>>> RUN mkdir /apache-jena > >>>>>> COPY log4j.properties /apache-jena > >>>>>> COPY fuseki-server.jar /apache-jena > >>>>>> > >>>>>> ## Run Fuseki command. > >>>>>> ENTRYPOINT [ \ > >>>>>> "/usr/bin/java", "-jar", \ > >>>>>> "-Dlog4j.configuration=file:/apache-jena/log4j.properties", \ > >>>>>> "/apache-jena/fuseki-server.jar" \ > >>>>>> ] > >>>>>> > >>>>>> ## Command line arguments are those for Fuseki. > >>>>>> CMD [] > >>>>>> --------------------------------------------------- > >>>>>> > >>>>>> Andy > >>>>>> > >>>>>> On 03/10/18 14:14, Martynas Jusevičius wrote: > >>>>>>> What Docker addresses nicely is uniform deployment across different > >>>>>>> platforms. And on top of that comes automatization, swarms etc. > >>>>>>> On Wed, Oct 3, 2018 at 2:52 PM Laura Morales <[email protected]> > >>>>>>> wrote: > >>>>>>>> > >>>>>>>> To be honest, for as long as Fuseki is not packaged in any > >>>>>>>> distribution, I'd rather compile it myself than contribute to the > >>>>>>>> trend of bloated app virtualization... > >>>>>>>> > >>>>>>>> > >>>>>>>> > >>>>>>>> Sent: Wednesday, October 03, 2018 at 2:30 PM > >>>>>>>> From: "Martynas Jusevičius" <[email protected]> > >>>>>>>> To: jena-users-ml <[email protected]> > >>>>>>>> Subject: Re: Distro package > >>>>>>>> I think Docker would be a more portable platform. Fuseki could have > >>>>>>>> an > >>>>>>>> image based on this: https://hub.docker.com/r/stain/jena-fuseki/ > >>>>>>>> > >>>>>>>> I also think I know what the maintainers will answer: this is an > >>>>>>>> open-source project, so contributions are welcome ;) > >>>>>>>> On Wed, Oct 3, 2018 at 2:28 PM Laura Morales <[email protected]> > >>>>>>>> wrote: > >>>>>>>>> > >>>>>>>>> Are there any plans to package jena/fuseki to Debian or other > >>>>>>>>> distros?
