Closed albertotb closed 4 years ago
Is the problem that the direction cannot be read/accessed (and the error message is close but not quite right)?
Gareth
On Mon, 22 Jun 2020, 11:17 pm Alberto Torres, notifications@github.com wrote:
When I run:
docker run --volume /home/user:/usr/share/hyrax opendap/hyrax
I get the following error:
############################## HYRAX ################################## Greetings, I am root. SERVER_HELP_EMAIL is not_set FOLLOW_SYMLINKS is not_set Found exisiting NCWMS_BASE: https://localhost:8080 Starting the BES Caught plugin exception during initialization of csv module: BESCatalogDirectory - root directory /usr/share/hyrax does not exist Could not initialize the modules to get the log contexts. Caught plugin exception during initialization of csv module: BESCatalogDirectory - root directory /usr/share/hyrax does not exist The beslistener status is not 'BESLISTENER_RUNNING' (it is '24747808') the master pid was not changed. besdaemon: server cannot mount at first try (core dump). Please correct problems on the process manager /usr/bin/beslistener BES PID file exists but process not running, cleaning up FAILED: The BES daemon did not appear to start
I don't understand how this is possible, if I extract the container filesystem I can see that there is a directory called /usr/share/hyrax. Removing the -volume flag works fine, but then I cannot serve my data.
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/OPENDAP/hyrax-docker/issues/28, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAUSKFKH3YXAOR2JYKVJND3RX5KVLANCNFSM4OESVGXA .
Do you mean /usr/share/hyrax
? it should be accessible, I'm using the official opendap/hyrax:latest image, I'm not building it myself
If you ment /home/user
what permissions does it need? It belongs to the docker group and to the user running the container. I also tried with several directories with no luck
I think that /home/user
needs to be mounted with read permission for the "bes" user.
Adding the permissions to the volume
command like this:
--volume /home/user:/usr/share/hyrax:ro
Might be the thing.
I tried adding the permissions but I'm getting the same error. I'm a little bit confused, the 'bes' user lives in the container, how would /home/user, a directory located in the host machine, know about the "bes" user? Maybe I'm missing something
On Tue, 23 Jun 2020 at 20:20, Nathan Potter notifications@github.com wrote:
I think that /home/user needs to be mounted with read permission for the "bes" user. Adding the permissions to the volume command like this: --volume /home/user:/usr/share/hyrax:ro Might be the thing.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/OPENDAP/hyrax-docker/issues/28#issuecomment-648334348, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABRWQAU2Y4RUYIJFHAGRGFLRYDW5LANCNFSM4OESVGXA .
The bes
user is not known to your system, but what you can do is use the user and/or group IDs of the BES user by number. In the Docker container you can see in /etc/passwd
the bes
user entry:
bes:x:999:997:BES daemon:/var/log/bes:/sbin/nologin
So what you can do on your system would be:
chown -R 999:997 /home/user
If that's too heavy handed you could just do the group, assuming you also set all the things to be group readable:
chgrp -R /home/usr
chmod -R g+r /home/user
Does that make sense?
I just tried in a fresh VM and everything works fine. Clearly is an OS related problem, but a very strange one. If I can reproduce it again I will try your suggestion and report back here.
I will close this for now if the problem reappears please let us know!
When I run:
I get the following error:
I don't understand how this is possible, if I extract the container filesystem I can see that there is a directory called
/usr/share/hyrax
. Removing the-volume
flag works fine, but then I cannot serve my data.