Как установить зависимости через Composer for Symfony в Dockerfile?

Я столкнулся с проблемой, связанной с созданием образа контейнера Docker, содержащего базовое приложение Symfony. Я могу установить расширения php без каких-либо проблем (mcrypt, pdo_mysql и т. Д.), Но я не могу устанавливать зависимости через Composer.

Итак … У меня есть проблемы, связанные с кэшированием и формированием файла autoload.php . Я не понимаю, почему, но он пытается подключиться к базе данных. Я предполагаю это, потому что получаю следующее сообщение:

  Script Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache handling the post-install-cmd event terminated with an exception [RuntimeException] An error occurred when executing the "'cache:clear --no-warmup'" command: [Doctrine\DBAL\Exception\ConnectionException] An exception occured in driver: SQLSTATE[HY000] [2002] No such file or directory [Doctrine\DBAL\Driver\PDOException] SQLSTATE[HY000] [2002] No such file or directory [PDOException] SQLSTATE[HY000] [2002] No such file or directory 

Я попытался установить с помощью команды composer install --no-scripts --no-autoloader и он завершен успешно. Но я не могу установить активы без файла autoload.php.

Возможно ли установить образ контейнера Docker с зависимыми от проекта зависимостями и активами на основе Symfony? Спасибо!

Один из ваших пакетов в AppKernel требует соединения с базой данных во время компиляции ядра (разогревание кеша). Вам нужно будет отладить, какой из пакетов делает это, отключив их по одному в то время.

Вероятно, если вы отключите все из них (кроме Symfony), создание контейнера будет прекрасным.

Таким образом, проблема в основном заключается в этих двух строках post-install-cmd , так как мой проект на Platform.sh, удаляющий эти строки, позволил мне создать контейнер:

 "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache", "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",