Среда Docker PHP / Nginx не может обработать путь к папке с обратной косой чертой

Я запускаю клиентское приложение Symfony3 на моем Docker для Windows. Мой docker-compose довольно прост: PHP7.1, Nginx, MySQL и phpMyAdmin.

Все работает нормально, но я получил несколько ошибок, когда PHP пытается получить доступ к путям к файлам, содержащим как прямую, так и обратную косую черту.

Например, первая ошибка, которую я получил: "Session Storage was not able to create directory "/var/www/symfony\app/../var/sessions/prod""

Это не проблема с разрешениями, потому что, когда я нахожу часть кода PHP, вызывающую этот файл, и заменяю \app с /app все работает нормально, и приложение работает по следующему пути, как это.

Я абсолютно не могу заменить все обратные косые черты в коде, потому что другие разработчики могут работать в Windows и поставить их обратно по какой-то причине. Тем не менее, я почти уверен, что уже запускал приложения с этим «королем пути» без каких-либо проблем.

Есть идеи о том, откуда это может прийти? Конфиг php? Конфиг Nginx?

Спасибо !

0

Решение

Итак, если вы хотите, чтобы ваши файлы Docker выглядели как Windows-y, используйте обратную галочку для выхода, следите за инструкциями, которые с ним не работают, и придерживайтесь формы оболочки для запуска команд:

# escape=`

FROM microsoft/nanoserver
COPY template.html c:\template.html
RUN mkdir c:\inetpub\wwwroot
RUN powershell `
cat c:\template.html `
> c:\inetpub\wwwroot\index.html

@ref: https://blog.sixeyed.com/windows-dockerfiles-and-the-backtick-backslash-backlash/

0

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

Других решений пока нет …

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