由root而非laradock用户创建的新的每日日志文件

时间:2019-01-13 16:46:56

标签: docker ubuntu permissions laradock

我有一个运行在Laradock Docker容器中的Laravel应用,它每天都会创建一个新的日志文件。

但是最近*每天UTC午夜,我需要修复日志文件的权限,因为它开始出现错误:

  

UnexpectedValueException: The stream or file "/var/www/myapp/storage/logs/laravel-2019-01-07.log" could not be opened: failed to open stream: Permission denied

运行ls -lah时,我看到新创建的每日日志文件由“ root”拥有,而不是“ laradock”

因此,我运行chown laradock:laradock laravel-2019-01-07.log对其进行了修复。但是第二天问题又发生了。

*我说“最近”,我唯一了解的变化是我关闭了Digital Ocean服务器,调整了它的大小,再次打开它,然后启动了Docker容器。

在此过程中我所做的一切似乎都阻止了使用正确所有权创建新文件。

我该如何解决?

新信息:

我也刚刚注意到该命令不再起作用:

cd /apps/laradock/ && docker-compose exec workspace bash -c "cd /var/www/myapp/; npm run production"并导致bash: npm: command not found,但是当我进入容器并以根用户身份运行它时,它可以工作。因此,权限问题的影响甚至超出了我的想象。

1 个答案:

答案 0 :(得分:0)

这周又发生了。我真的不知道是什么导致权限突然改变。

同样,我运行了这些命令,从那以后的几天里我再也没有看到这个问题。

cd /apps/laradock && docker-compose build --no-cache --force-rm workspace
docker ps
docker-compose up -d workspace
docker ps