Fix #2680 - Run processes in Docker as non-root user (alternative) #3159
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.
Here's an alternative to #3152.
First, #3152 won't work because it's not using correctly busybox adduser (
--disabled-login
doesn't exist, for example). And another problem is that with #3152, we'll always create a user with the same IDs (1000
).This PR was made with flexibility in mind :
UID
andGID
should be easily set if needed (this can be done using environment variables, defaults are 991). It's also better not to create the user during the build process.Suggestion : do you want to update
docker-compose.yml
or.env.production
to show how to configure these environment variables? This is not necessary, but I think it's better for visibility.That being said, I couldn't make it more "transparent" than #3152 : this means actual administrators coming from a previous release will have to
chown UID:GID /path/to/public/system
. Otherwise, even with optimisations, this will take too much (and useless) time before the process is run. No problem for new installations though, but this PR will require a release note.