路径在容器内不可写

时间:2017-05-11 02:51:04

标签: php linux laravel docker permissions

我有一个在Docker容器中运行的Laravel应用程序并且正在运行Path "/var/www/app/storage/clockwork" is not writable.根据Laravel提供的信息,用户是www-data。最初它显示'1000'和'1001'所在的用户和组拥有该目录。我修改了www-data用户和组的uid和gid以匹配容器中的那些。 ls -l显示以下内容:

drwxrwxr-x 2 www-data www-data 4096 May 10 19:01 clockwork

如果www-data用户拥有该目录,我不明白为什么它无法写入该目录。我在这里缺少什么?

2 个答案:

答案 0 :(得分:1)

仔细检查用户的Web服务器(例如:/etc/nginx/nginx.conf),如果您正在使用PHP-FPM用户(取决于发行版,但/ etc / PHP / VERSION / FPM / PHP-fpm.conf)。

确保用户对所有父目录(在您的情况下为/ var / var / www / var / www / app和/ var / www / app / storage)具有执行权限。您应该能够使用该用户sudo -u www-data stat /var/www/app/storage/clockwork“统计”目录。

如果目录从主机安装到容器,则存在一些已知问题,具体取决于操作系统等。

答案 1 :(得分:0)

显然,我需要重新启动容器。关闭并回到它之后,一切正常。