From 9644e66fbf7eb393f60470b033d141041c4875b7 Mon Sep 17 00:00:00 2001 From: Bachir Soussi Chiadmi Date: Fri, 19 Jul 2019 10:57:45 +0200 Subject: [PATCH] automaticly create the basex db from sourcesPrep --- Docker/basex/Dockerfile | 14 ++++++++++++-- Docker/basex/bashrc | 3 +++ Docker/basex/gdp-entrypoint.sh | 10 ++++++++++ Docker/basex/inputrc | 2 ++ docker-compose.yml | 28 ++++++++++++++++------------ 5 files changed, 43 insertions(+), 14 deletions(-) create mode 100644 Docker/basex/bashrc create mode 100755 Docker/basex/gdp-entrypoint.sh create mode 100644 Docker/basex/inputrc diff --git a/Docker/basex/Dockerfile b/Docker/basex/Dockerfile index 849c220..5b8bf94 100644 --- a/Docker/basex/Dockerfile +++ b/Docker/basex/Dockerfile @@ -1,5 +1,15 @@ FROM basex/basexhttp:latest -# RUN basex run db:create("gdp","/srv/basex/src/gdp.tei.xml") +COPY ./bashrc /srv/.bashrc +COPY ./inputrc /srv/.inputrc -RUN basex "db:create('gdp','/srv/basex/src/gdp.tei.xml', (),map {'ftindex': true(),'stemming': true(),'casesens': true(),'diacritics': true(),'language': 'fr','updindex': true(),'autooptimize': true(),'maxlen': 96,'maxcats': 100,'splitsize': 0,'chop': false(),'textindex': true(),'attrindex': true(),'tokenindex': true(), 'xinclude': true()})" +# RUN basex "db:create('gdp','/srv/basex/src/gdp.tei.xml', (),map {'ftindex': true(),'stemming': true(),'casesens': true(),'diacritics': true(),'language': 'fr','updindex': true(),'autooptimize': true(),'maxlen': 96,'maxcats': 100,'splitsize': 0,'chop': false(),'textindex': true(),'attrindex': true(),'tokenindex': true(), 'xinclude': true()})" + + + +COPY ./gdp-entrypoint.sh /usr/local/bin +USER root +RUN chmod +x /usr/local/bin/gdp-entrypoint.sh +# RUN ln -s /usr/local/bin/gdp-entrypoint.sh /srv/ # backwards compat +USER basex +CMD ["/bin/sh","/usr/local/bin/gdp-entrypoint.sh"] diff --git a/Docker/basex/bashrc b/Docker/basex/bashrc new file mode 100644 index 0000000..cb96b1f --- /dev/null +++ b/Docker/basex/bashrc @@ -0,0 +1,3 @@ +PS1='\e[36m\e[1mBaseX\e[0m:\e[90m\w\e[0m\n$ ' +bind '"\e[A": history-search-backward' +bind '"\e[B": history-search-forward' diff --git a/Docker/basex/gdp-entrypoint.sh b/Docker/basex/gdp-entrypoint.sh new file mode 100755 index 0000000..3e84001 --- /dev/null +++ b/Docker/basex/gdp-entrypoint.sh @@ -0,0 +1,10 @@ +#!/bin/sh + +# todo: run some checks + +echo "Creating GDP BaseX db" +basex "db:create('gdp','/srv/basex/src/gdp.tei.xml', (),map {'ftindex': true(),'stemming': true(),'casesens': true(),'diacritics': true(),'language': 'fr','updindex': true(),'autooptimize': true(),'maxlen': 96,'maxcats': 100,'splitsize': 0,'chop': false(),'textindex': true(),'attrindex': true(),'tokenindex': true(), 'xinclude': true()})" + +# as we override the parent container CMD, we have to launch basexhttp here +echo "Launching basexhttp" +basexhttp diff --git a/Docker/basex/inputrc b/Docker/basex/inputrc new file mode 100644 index 0000000..db8d91d --- /dev/null +++ b/Docker/basex/inputrc @@ -0,0 +1,2 @@ +set show-all-if-ambiguous on +set completion-ignore-case on diff --git a/docker-compose.yml b/docker-compose.yml index 77e8f13..308c7df 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,8 +1,8 @@ -version: "3.5" - +version: '3.7' services: basex: build: ./Docker/basex/ + ports: - 1984:1984 - 8984:8984 @@ -10,15 +10,19 @@ services: - "${SYNOPSX_ROOT}:/srv/basex/webapp/synopsx" - "${WEBAPP_ROOT}:/srv/basex/webapp/synopsx/workspace/gdp" - "${DATA_ROOT}:/srv/basex/src" + - basex-home:/srv # - "${LOG_ROOT}:/var/log:rw" + working_dir: "/srv/basex" - nginx: - build: ./Docker/nginx/ - ports: - - 8990:80 - volumes: - - "${CLIENT_ROOT}:/var/www/html" - - "${LOG_ROOT}:/var/log:rw" - working_dir: "/var/www/html/" - depends_on: - - basex + # nginx: + # build: ./Docker/nginx/ + # ports: + # - 8990:80 + # volumes: + # - "${CLIENT_ROOT}:/var/www/html" + # - "${LOG_ROOT}:/var/log:rw" + # working_dir: "/var/www/html/" + # depends_on: + # - basex +volumes: + basex-home: