path在容器内不可写

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

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

如果www-data用户拥有目录,我不明白为什么不能写入目录。 我在这里错过了什么?

仔细检查你的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

如果从主机上将目录挂载到容器上,则根据操作系统的不同,也有一些已知的问题。

显然重启容器是我需要做的。 closures并回来后,一切正常。