Как диагностировать если один контейнер создает файл laravel-2025-01-01.log топ почему другой контейнер не может получить доступ?
Ссылка скопирована
Нужно понять: кратко - есть 2 докер контейнера - horizon и php-fpm - если horizon запишет файл под своим user-ом то другой контейнер не может получить к нему доступ, не может его записать, как сделать чтобы мог?
-rw-r--r-- 1 root root 1637496 Oct 8 08:59 laravel-2025-10-08-1.log -rw-r--r-- 1 1000 1000 49113 Oct 8 08:59 laravel-2025-10-08.log
По вводным: "...-1.log" файл - скопированный
Нужно решить такую задачу?
Заказать помощь
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Лучший ответ
1
Другие ответы (0)
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопроскомментарий
Вам также может быть интересно
VPN
Как правильно настроить vless для Android TV?
1 ответ
Pyrogram
Как правильно зарегистрировать юзер бота в Telegram?
1 ответ
печатные-платы
Как заставить запускаться программу M3.exe от компании Hanxing AOI в инспекционной машине на Windows 7 Pro?
1 ответ
Аккумуляторные батареи
Почему при зарядке автостарта слышен писк, где искать причину?
1 ответ

Если один контейнер создаёт файл
laravel-2025-01-01.log, а другой контейнер не может его прочитать или записать, почти всегда причина в правах пользователя, volume mount или разных путях внутри контейнеров. В Docker контейнеры изолированы: файл, созданный в одном контейнере, виден другому только через общий volume.Проверьте, что оба контейнера используют один и тот же volume:
services: app: volumes: - ./storage:/var/www/html/storage queue: volumes: - ./storage:/var/www/html/storage
Если volume общий, смотрите владельца и права:
docker exec -it app ls -la storage/logs docker exec -it queue id docker exec -it queue ls -la storage/logs
Laravel обычно пишет логи пользователем
www-dataили пользователем PHP-FPM. Если один контейнер работает от root, а второй от www-data, первый может создать файл так, что второй не сможет писать.Решение — привести UID/GID к одному виду и выставить права на storage:
chown -R www-data:www-data storage bootstrap/cache chmod -R ug+rw storage bootstrap/cache
В продакшене лучше не давать
777. Это быстро “лечит” симптом, но создаёт лишний риск. Правильнее одинаковый пользователь в контейнерах и общий writable volume.Также проверьте настройку Laravel
LOG_CHANNEL. Если несколько процессов пишут в один файл, используйте daily/single аккуратно. Для контейнеров часто лучше писать логи в stdout/stderr и собирать их Docker/лог-системой.Итог: проверьте общий volume, одинаковый путь, пользователя внутри контейнеров и права на
storage/logs. Проблема обычно не в Laravel, а в Docker-правах и владельце созданного файла.