Problem was solved.
It wasn't the templates, or anything else. The failures were caused by a permissions problem.
I have the files in the Joomla root (/var/www/html) directory mapped to a local directory on my server. I do not know how the user IDs and permissions are set by the Joomla application, but docker containers, when creating file systems (like the directories and files for a Joomla installation), have them belong to root. Apparently the Joomla application has a different user name. As a result of the standard permission settings for file creation, Joomla was unable to copy files to the various directories when attempting to install templates or other components.
I solved the problem by giving universal write permissions for the files and directories. Once I did this, my installations worked without problems (except for the installation of the T4 framework and template builder, whose installation is failing for a different reason). I believe, however, there is a bug in the docker container configuration. The bug is simple enough: on a Linux system the container needs to set ownership of files and directories it creates to the Joomla application when it is first started. This can be done with a single configuration setting, but I do not know the username of the Joomla application. If I knew the username, I can edit my docker-compose.yml file to properly set all file/directory ownership. My write permission settings are a good kludge, but they create security issues for any website.
Can someone tell me the username that Joomla uses on Linux systems? I can provide the appropriate changes in the docker run command and a docker-compose.yml file that will fix this bug.
It wasn't the templates, or anything else. The failures were caused by a permissions problem.
I have the files in the Joomla root (/var/www/html) directory mapped to a local directory on my server. I do not know how the user IDs and permissions are set by the Joomla application, but docker containers, when creating file systems (like the directories and files for a Joomla installation), have them belong to root. Apparently the Joomla application has a different user name. As a result of the standard permission settings for file creation, Joomla was unable to copy files to the various directories when attempting to install templates or other components.
I solved the problem by giving universal write permissions for the files and directories. Once I did this, my installations worked without problems (except for the installation of the T4 framework and template builder, whose installation is failing for a different reason). I believe, however, there is a bug in the docker container configuration. The bug is simple enough: on a Linux system the container needs to set ownership of files and directories it creates to the Joomla application when it is first started. This can be done with a single configuration setting, but I do not know the username of the Joomla application. If I knew the username, I can edit my docker-compose.yml file to properly set all file/directory ownership. My write permission settings are a good kludge, but they create security issues for any website.
Can someone tell me the username that Joomla uses on Linux systems? I can provide the appropriate changes in the docker run command and a docker-compose.yml file that will fix this bug.
Statistics: Posted by FactorThree — Fri May 24, 2024 12:45 am