PHP Docker пишет в stderr через файл

Можно ли перенаправить простой текстовый файл журнала в stderr в контейнере Docker, который доступен для записи PHP?

У меня есть приложение PHP, которое пишет в файл, и мы пытаемся переместить его в контейнер Docker без изменения какого-либо кода. Я пробовал символическую ссылку, но это приводит к ошибкам разрешений.

0

Решение

Не уверен, какой тип символических ссылок вы пробовали, но вы должны быть в состоянии сделать это с чем-то вроде

RUN ln -sf / dev / stderr /path/to/your/text.log

В вашем Dockerfile (где путь text.log находится внутри контейнера).

0

Другие решения

В итоге я нашел это решение, которое использует fifopipe передать данные в стандартный вывод.

# Allow `nobody` user to write to /dev/stderr
mkfifo -m 600 /tmp/logpipe
chown nobody:nobody /tmp/logpipe
cat <> /tmp/logpipe 1>&2 &

https://github.com/moby/moby/issues/6880#issuecomment-344114520

0

По вопросам рекламы [email protected]