Отказано в доступе - отсоединить файл - PullRequest
0 голосов
/ 14 мая 2019

Я могу загрузить файл, но не удалить его.

У меня есть контейнеры nginx, laravel и redis.

Когда я загружаю свою очередь, создаю файлы и папки в / var / www/ storage / app / public (контейнер laravel)

Эта папка используется совместно с хостом с помощью тома докера.

Когда я пытаюсь удалить файл и папку, я не могу, потому что яУ меня нет прав ...

Я пытался изменить пользователя php-fpm с www-data на root в www.conf. Я пытался запустить процесс очереди supervisord и fpm от имени пользователя root

www.conf

; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group
;       will be used.
user = www-data
group = www-data

supervisord.conf

[program:php-fpm]
command=/usr/local/sbin/php-fpm -F
autostart=true
autorestart=true
priority=5
stdout_events_enabled=true
stderr_events_enabled=true

[program:laravel-worker]
process_name=%(program_name)s_%(process_num)02d
command=php /var/www/artisan queue:work redis --sleep=3 --tries=3
autostart=true
autorestart=true
user=root
numprocs=8
priority=10
redirect_stderr=true
stdout_logfile=/var/www/storage/logs/worker.log

Ответы [ 2 ]

0 голосов
/ 02 июня 2019

Я нашел решение, так что если у кого-то из вас возникла такая проблема.

Я поменяю пользователя Redis в моем файле supervisord conf так, чтобы он совпадал с именем пользователя php fpm (поэтому вместо данных www-data вместоroot)

тада все отлично работает

0 голосов
/ 14 мая 2019

Я понимаю, что вы не можете удалить файлы или папку в контейнере, возможно, вы видите: Невозможно удалить файл, созданный с помощью Docker

...