fix(install): establish /docker traversal before the WebUI copy

installLibrePortalImageWebUI copies the WebUI template into the
dockerinstall-owned containers/ dir, but on a fresh install the general
traversal/ownership reconcile (fixFolderPermissions -> runOwnership
traversal) runs LATER. So at copy time /docker is still 750
(untraversable by the container user) and containers/ may still be
manager-owned, and the copy fails ("tar: /docker/containers: Cannot
open: Permission denied"), cascading into the WebUI never starting on a
first install. Call fixFolderPermissions first so /docker is +x and
containers/ is owned by the container user before the copy.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Signed-off-by: librelad <librelad@digitalangels.vip>
This commit is contained in:
librelad 2026-05-24 21:29:51 +01:00
parent b8f674050c
commit 670a781927

View File

@ -6,6 +6,13 @@ installLibrePortalImageWebUI()
isNotice "Building the LibrePortal WebUI Docker image..."
# The copy below writes into the dockerinstall-owned containers/ dir. On a
# fresh install the general traversal/ownership reconcile runs LATER, so at
# this point /docker is still 750 (untraversable by the container user) and
# containers/ may still be manager-owned — the copy would fail. Establish
# traversal (+x on /docker) and containers/ ownership FIRST.
fixFolderPermissions
local result=$(copyFolder "$install_containers_dir/libreportal" "$containers_dir" "$sudo_user_name")
checkSuccess "Copy the LibrePortal to the containers folder"