在Windows的docker中运行时找不到PHP文件

时间:2018-11-16 13:48:44

标签: php windows docker typo3 windows-subsystem-for-linux

在工作中,我使用Windows 10 Pro + Windows Subsystem for Linux(WSL)+ Docker的笔记本电脑上工作。我面临的问题如下。

我正在为TYPO3 CMS开发一个插件。我有一个docker-compose脚本可以为我设置整个环境。我使用Nginx,PHP 7.2 FPM和MySQL 5.6。但是在安装TYPO3 9LTS并转到其后端后,我得到了大量的PHP错误,例如

PHP Warning: include('./vendor/autoload.php'): failed to open stream: No such file or directory

但是文件实际上在那儿!这个问题是完全随机的。有时它将加载此文件,但是死于想要包含另一个文件。

文件权限似乎很好。我用2个不同的docker-compose脚本进行了尝试,并且都遇到了相同的问题。但是,当我在本机Linux上尝试它们时,它们可以正常工作。

我应该提到,对于CMS版本7,我已经在WSL和docker上安装了TYPO3。我有时也会收到No such file or directory错误,但在浏览器中刷新后就可以了。不过,Docker的设置是相似的(Web服务器映像只是不同的-具有PHP 7.2的Ubuntu 18.04与具有PHP 7.0的Ubuntu 16.04),但对于TYPO3版本9根本不起作用。

我使用以下docker composer样板:

  1. https://phpdocker.io/generator-PHP 7.2,nginx和MySQL(不包括其他所有内容)
  2. https://github.com/webdevops/TYPO3-docker-boilerplate-与上述非常相似。在Dockerfile.development中,我将图像更改为从webdevops/php-nginx-dev:ubuntu-18.04
  3. 拉出

我还没有尝试在Apache + mod_php上运行它,但是我可以。只是我已经习惯了nginx,所以我更喜欢在Apache上使用它。

0 个答案:

没有答案