-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
docker: no longer chown /opt #558
docker: no longer chown /opt #558
Conversation
container start-up time is now indeed very fast, while creation time is very long... We should try to be more selective probably, and definitely not do the whole of |
Ah well. I thought I had it fixed with my new strategy: use
Result: image creation time same as on Except... it doesn't work. Files in /opt/SIRF-SuperBuild/sources/SIRF It seems that setting |
So, the question is then if we can live with
Presumably it would be safest to Of course, this would have to be documented. It's not ideal, but shaving 10 mins of start-time isn't small... Or is there another solution? |
Is it not possible to use There's no reason why conda should be installed by the superuser. |
The point is that at image build time (i.e. whatever (Note that the username/groupname don't mean anything, it's the numbers that matter). |
Haroon Chughtai suggests
I guess this might work as:
First check in a VM (or running docker) that the above strategy actually allows |
@paskino I've taken some of your lines in #569 and incorporated them in the "regular" stuff. I've kept @casperdcl's overall structure, but do make another user (part of We have therefore 2 users: However, Note that with this set-up, it should be easy (?) to copy some of your lines at the end of the current I hope this was clear enough, but probably not! |
@paskino I tried this together with #574 It seems to work quite well. Reasonably fast build time (some It should also be almost ready for the jupyterhub changes. I believe we should merge these PRs. (There's a conflict, which I'll sort out). |
These are no longer needed. [ci skip]
5910cc2
to
eb429a1
Compare
To avoid having root owning too many files, and to prepare for jupyterhub (which doesn't want root), we create the user* files using a new user (currently defaulting to be called jovyan). entrypoint.sh and sirf-compose will still create sirfuser such that it can read/write to the mounted volume. This way, we don't have to change permissions/ownership if most of the files, saving time. However, it does mean that conda needs to be run by jovyan, which is undesirable. [ci skip]
add some brackets... [ci skip]
[actions skip]
[ci skip]
[ci skip]
eb429a1
to
2c7f966
Compare
@paskino I've cleaned up the history and merged it. Let's see what the Travis build says for the generated dockers... |
At least on some systems, changing ownership of /opt/* took a long time when the container was created. Instead, we just give everyone write permissions, but do this when creating the images.
Fixes #555