在工作中,我使用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样板:
Dockerfile.development
中,我将图像更改为从webdevops/php-nginx-dev:ubuntu-18.04
我还没有尝试在Apache + mod_php上运行它,但是我可以。只是我已经习惯了nginx,所以我更喜欢在Apache上使用它。