Class 'mysqli' not found при локальном развёртывании движка из github.
В-общем, поднял локальное окружение с помощью докер
Фреймворк и движок подтянул из гитхаб.
Запустил сервер и получил ошибку
Fatal error: Uncaught Error: Class 'mysqli' not found in /webasyst/wa-system/database/waDbMysqliAdapter.class.php:35 Stack trace: #0 /webasyst/wa-system/database/waDbAdapter.class.php(30): waDbMysqliAdapter->connect(Array) #1 /webasyst/wa-system/database/waDbConnector.class.php(52): waDbAdapter->__construct(Array) #2 /webasyst/wa-system/database/waModel.class.php(76): waDbConnector::getConnection('default', false) #3 /webasyst/wa-system/contact/waContact.class.php(67): waModel->__construct() #4 /webasyst/wa-system/user/waUser.class.php(22): waContact->init() #5 /webasyst/wa-system/user/waAuthUser.class.php(32): waUser->init() #6 /webasyst/wa-system/user/waAuthUser.class.php(27): waAuthUser->init() #7 /webasyst/wa-system/waSystem.class.php(250): waAuthUser->__construct(NULL, Array) #8 /webasyst/wa-system/waSystem.class.php(293): waSystem::getCommonFactory('auth_user', 'waAuthUser', Array, NULL) #9 /webasyst/wa-system/waSystem.class.php(832): waSystem->getUser() #10 /webasyst/wa-system/waSystem.class.php(1013): waSystem->ge in /webasyst/wa-system/database/waDbMysqliAdapter.class.php on line 35
Подскажите решение проблемы, пожалуйста.
Прежде такой ошибки не возникало.
13 ответов
Можете попробовать развернуть окружение с помощью https://github.com/Fameing/doc...
Этот конфиг посвежее, спасибо за ссылку)
Вечером протестирую и отпишусь.
Свежий конфиг не пошёл чё-то, выходит ошибка 403, когда поднимаю. А вы уже использовали этот конфиг?
Если все сделали верно то просто заходите в браузере http://localhost и все работает.
Все конфигурации портов описаны в env файле : https://github.com/Fameing/doc...
Такая же фигня была, но я тупо забил, тему в топ, чтобы разработчики увидели
Добавьте в Dockerfile установку php7.1-mysqli
Если расширение просто не подключено, то подключите в конфиге
В чем проблема то?
Непонятно почему сейчас нужно самому что-то добавить в файл. Прежде ведь всё работало норм. Как вы это объясните?
образ входящий в контейнер поменялся скорее всего
это не помогло, пошли ошибки при чистой сборке php-fpm
php-fpm собирается на основе образа phpdockerio/php71-fpm
В докерхабе я нашёл автора и посмотрел что ещё есть.
В итоге я взял phpdockerio/php73-fpm, внёс соответствующие изменения и всё заработало.
p.s. написано, что образ устарел, как и php71, но у меня работает всё.
p.s.s надо было взять php80, хотя для него тоже указано, что устарел(я не понял почему так).
устарела минорная версия, сейчас уже 8.1.*
для особо одаренных есть конфигуратор/генератор
спасибо, будем посмотреть