Docker -在Docker容器外用PHP创建目录


Docker - Creating directory with PHP outside docker container

这是我的第一个问题,希望我不会违反任何规则:)

我试图运行一个脚本,在/var/www/中创建一个子目录。我有一个脚本,应该创建一个目录,自动转换为LEMP vHost -它检查/var/www目录中包含htdocs的子文件夹,然后自动生成一个虚拟主机。

LEMP(nginx, PHP 5.6, MySQL)栈在Ubuntu 16.04服务器的docker容器中运行

问题是我找不到一种方法来获得此任务的适当权限配置。我的代码如下所示:

<?php
if(mkdir("/var/www/".$_POST['name']."/htdocs", 0644, true))
{
    echo('vHost created');
}
else
{
    echo('ERROR!');
}
?>

我目前对/var/www目录的权限是777(我知道这不是真正安全的方法,但我很绝望)。我正在尝试各种权限和所有权-内部和外部的容器,但每次我调用一个PHP文件,它返回以下错误。

Warning: mkdir(): Permission denied in /var/www/default/htdocs/createVhosts.php on line 42
有什么我应该试试的想法或建议吗?

好了,我自己已经回答了我的问题。

对于那些正面临或即将面临同样问题的人:当我编写代码并得到一个错误时,我试图在权限中找到原因,但我没有意识到我正在尝试写主机而不是容器。

我已经解决了一个问题,通过替换:

/var/www/

/shared/httpd/