php - Erros使用PHP和Twig镜像Docker

标签 php docker symfony twig dockerfile

我在docker上安装Synfony和Twig时遇到问题。

Fatal error: Uncaught Error: Class 'Twig \ Environment' not found in /var/www/html/... appears.


这是我的Dockerfile

FROM php: 7.2-apache

#Install unzip, composer,
RUN curl -sS https://getcomposer.org/installer | php - --install-dir = / usr / local / bin --filename = composer \
    && apt-get update && apt-get install -y git libzip-dev unzip \
    && docker-php-ext-install zip \
    && a2enmod rewrite headers \

COPY src / / var / www / html /
    
#Enable Twig and Symfony
RUN cd / var / www && composer require "twig / twig: ^ 3.0"
RUN composer require "symfony / form"
我的 Controller
protected function load (string $ view, $ param = [])
{
    $twig = new \Twig\Environment((new \Twig\Loader\FilesystemLoader ('../app/site/view/')),
        ['debug' => false]
    );
    $ twig->addGlobal ('BASE', BASE);
    echo $twig->render($view . '.twig.php', $params);
}
你知道怎么了吗

最佳答案

请原谅,我对错误的关注如此之大,以至于错误未被注意到。
我在错误的文件夹中运行 Composer

COPY src/ /var/www/html/

RUN cd/var/www && composer require "twig/twig:^3.0"
它在www上运行,但应用程序在www / html上
对不起...

关于php - Erros使用PHP和Twig镜像Docker,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62904031/

相关文章:

php - MySQL 返回一些行 3 次

PHP - 保存 Tumblr API 的访问 token

image - 在OpenShift Origin 1.1.6中修剪未使用的图像

php - 无法在 docker 镜像中找到包

php - 如何使关系 ManytoOne 为空

php - 使用数组分隔字符串

php - 如何在 php preg_replace 中去除 ${1}?

docker - 如何通过 app.json 在 Heroku 上运行 Docker Hub 容器?

symfony - 在 Controller 中使用什么代替 getRequest()->get(...)

php - EasyAdminBundle 实体表单字段自定义