Improving permissions management / startup time on some systems #65
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
To ensure correct permissions, a recursive
chownwas made on/home/abcat each launch (in/docker/root/etc/s6-overlay/s6/rc.d/init-chown/run).On some (file)systems, it could be quite long because there are many (small) files. (I'm note sure why, but in an lxc container on one of my servers it takes 2 minutes, whereas on another, more classic system, it is almost instantaneous).
I propose:
a different way to change permissions on launch in case they are not correct, using
findto detect dirs/files to change instead onchowning all the directory. It seems more efficient.furthermore, since the default values of
PGIDandPUIDenvironment variables are 1000 in docker-compose, and most users will not change them, I propose to modify the Ids of the user and group "abc" (which are 911 by default in the base image) directly when building the image, to limit the number of changes to be made after launching the container in the majority of use casesadding a
chownon /home/abc after the installation of MinicondaThis fixes the performance issue I've been seeing, and I think it might help prevent future complications with file permissions.