-
Notifications
You must be signed in to change notification settings - Fork 97
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
Allow to set ACLs #530
Comments
i think i understand. would a potential solution be to use |
Right now, we are indeed solving the issue by using the
I think the whole conda problem can be quite easily solved by baking everything that Credits to @travishathaway! |
Note, that setting ACLs via an entrypoint also works (it's just two ways of fixing the same issues that come with the |
This issue is stale because it has been open for 30 days with no activity. |
This issue was closed because it has been inactive for 14 days since being marked as stale. |
In my institution, we don't have root rights on our machines. This leads to the situation that one cannot manipulate or delete files that were created by the "internal" docker users. One solution to avoid this is to use the
--user
option by passing the host user's id and group id to the container (see these old fmriprep docs for more information). This solution however comes with various issues.Another solution that I tried out is to not use the
--user
option but instead to use theacl
package and set full permissions for other users on all necessary folders.Example:
Currently, you can not set the ACLs within the Dockerfile so we have to use a workaround derived from this thread: Create a bash script (e.g.
setfacl.sh
) that is called at startup using theCMD
command. This script will set full permissions to other users (which includes the host user) on the directories of choice. The-d
option enables inheritance so the permissions rules also apply to future directories and folders. Make sure that the container keeps running after the ACLs were set by adding/usr/bin/env bash
at the end:And this would be the Dockerfile:
Problem: The
acl
package is only available with never Linux distros. Right now I have to create my own Dockerfiles because I need SPM and the installation of newer distros + SPM is currently not possible with neurodockerThe text was updated successfully, but these errors were encountered: