feat: add support for custom user namespaces when creating persistent storage directories
Closes #3454
This commit is contained in:
@@ -44,12 +44,19 @@ cmd-storage-ensure-directory() {
|
||||
CHOWN_FLAG="1000"
|
||||
elif [[ "$CHOWN_FLAG" == "packeto" ]]; then
|
||||
CHOWN_FLAG="2000"
|
||||
elif [[ "$CHOWN_FLAG" == "root" ]]; then
|
||||
CHOWN_FLAG="0"
|
||||
elif [[ "$CHOWN_FLAG" == "false" ]]; then
|
||||
CHOWN_FLAG="false"
|
||||
else
|
||||
dokku_log_fail "Unsupported chown permissions"
|
||||
fi
|
||||
|
||||
userns_enabled="$(docker info -f '{{range .SecurityOptions}}{{if eq . "name=userns"}}true{{end}}{{end}}')"
|
||||
if [[ "$userns_enabled" == "true" ]] && [[ "$CHOWN_FLAG" != "false" ]]; then
|
||||
CHOWN_FLAG=$((CHOWN_FLAG + 165536))
|
||||
fi
|
||||
|
||||
local storage_directory="${DOKKU_LIB_ROOT}/data/storage/$DIRECTORY"
|
||||
dokku_log_info1 "Ensuring ${storage_directory} exists"
|
||||
mkdir -p "${storage_directory}"
|
||||
|
||||
Reference in New Issue
Block a user