eXist-db / docker-existdb

Docker image builder for eXist-db
GNU Affero General Public License v3.0
11 stars 6 forks source link

upload xquery to an image #65

Open gabylan12 opened 5 years ago

gabylan12 commented 5 years ago

I want to upload my xquery to a new image without using volumes. There is an easy way to do it? the best idea is to autoupload an .xar file.

duncdrum commented 5 years ago

yes installing an expath package via .xar copied to the autodeploy folder is the straightforward means to do this without volumes. Depending on your needs you might find this repo helpful for an elaborate example.

grantmacken commented 5 years ago

I want to upload my xquery to a new image without using volume

I'm not clear on what you are are trying to accomplish.

On Mon, 18 Mar 2019 at 20:21, Duncan Paterson notifications@github.com wrote:

yes installing an expath package via .xar copied to the autodeploy folder is the straightforward means to do this without volumes. Depending on your needs you might find this repo https://github.com/grantmacken/csv helpful for an elaborate example.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/eXist-db/docker-existdb/issues/65#issuecomment-473796894, or mute the thread https://github.com/notifications/unsubscribe-auth/ABrSYAXR8EPNZnXIifQyQMF4vRbxM5xIks5vXz51gaJpZM4b40Qh .

-- Take Care Grant Mackenzie

gabylan12 commented 5 years ago

I want the third option

But, if i want to upload a file with the client.sh, the docker hub does not have installed a shell. How do i do that?

duncdrum commented 5 years ago

You can either use these images as a base image for your own images described here. For simple copy operations you can use docker cp … also featured in the readme, you can also use exist's rest service to get your file into the db. addendum you can also upload the xq file manually and docker commit ...

gabylan12 commented 5 years ago

i need to add a file at fs/db/system/autostart/. the file is replicated.xq, but in Dockerfile the line does not start the xquery

COPY replicated.xq /exist/webapp/WEB-INF/data/fs/db/system/autostart/

I Cant make a .xar to deploy this file. the docker commit option does not work for me because i need a script to build the image

any ideas?

dizzzz commented 5 years ago

@gabylan12 you should not manually modify "WEB-INF/data/fs" ... exist will not see it. The filesystem should not be touched directly, and with the newest (dev) versions of eXist-db this is not possible anymore.

dizzzz commented 5 years ago

@gabylan12 you need to push (HTTP?) the replicated.xq file into /db/system/autostart/ ; but please note that (1) all permissions of all directories/files need to be according to the rules (see conf.xml) and (2) the autostart trigger needs to be enabled in conf.xml

gabylan12 commented 5 years ago

But, there is any way to do that inside the Dockerfile? the problem with the HTTP push is that i have to do this step manually, i want to do it inside the Dockerfile.

duncdrum commented 5 years ago

What happens if you just adjust the COPY… statement with the path Dannes mentioned?