ome / ansible-role-omero-web

Installs and configures OMERO.web and Nginx
BSD 2-Clause "Simplified" License
1 stars 14 forks source link

Allow setting UID/GID of user #6

Closed joshmoore closed 6 years ago

joshmoore commented 6 years ago

see:

Depending on what workflows we want to enable for developers, being able to define the UID for omero-web may be valuable.

manics commented 6 years ago

What changes are required that can't be handled by docker run --user UID?

joshmoore commented 6 years ago

That doesn't change the UID/GID of the files owned by that user, right? The goal in that thread is to be able to access the source file to develop on omero-web. The docker cp workflow there would need this change. Other ideas welcome.

manics commented 6 years ago

https://www.openmicroscopy.org/community/viewtopic.php?f=4&t=8397&start=10#p18793 forum-image

A host directory is being mounted on /opt/omero/web, which means the permissions and UID should be entirely determined by the host system.

joshmoore commented 6 years ago

I don't follow. The goal of using docker cp was to have a simple way to get the valid values out for editing. However, docker cp transforms permissions even when using -a. Another option would be to have all of /opt/omero/web in a volume, but that's not currently the case. The downstream dockerfile that I added on that forum post does the trick, but it's suboptimal.

manics commented 6 years ago

If the primary goal is development I'd have though it'd be easier to download OMERO.py on the host, mount that on /opt/omero/web/OMERO.web, run the docker container with your local UID, and make changes on your host, bypassing the need to copy files back and forth.

edit: what would be even nicer is if you could git clone https://github.com/openmicroscopy/openmicroscopy locally and mount a subdir of that on /opt/omero/web/OMERO.web

joshmoore commented 6 years ago

The difference between docker cp and wget OMERO.py is probably negligible, so whatever works.

More critical is going to be getting the UIDs/GIDs correct which is what this card is about. I tried several things (all on that thread) with only the last working and it would be simplified by being able to change the UID in the build without needing to chown. If you have another working blurb that doesn't require it, :+1:

joshmoore commented 6 years ago

what would be even nicer is if you could git clone https://github.com/openmicroscopy/openmicroscopy locally and mount a subdir of that on /opt/omero/web/OMERO.web

Not exactly the same, but at least for the OMERO.server image there's now https://github.com/openmicroscopy/openmicroscopy/pull/5656/files#diff-3254677a7917c6c01f55212f86c57fbf