PHPUnit требует mbstring хотя он есть
Запустил ларавел в докер контейнере. Написал тесты. Запускаю через артизан и получаю PHPUnit requires the "mbstring" extension.
Изменил докерфайл для данного контейнера добавив apt-get install -y libonig-dev && docker-php-ext-install mbstring
. Пересобрал контейнер, но пхпюнит все равно бунтует. Читал что надо где-то как-то включить еще mbstring
, но не знаю где и надо ли в дебиане это делать.
Сам Dockerfile:
FROM php:8.1.16-fpm
# Copy composer.lock and composer.json
COPY composer.lock composer.json /var/www/
# Set working directory
WORKDIR /var/www
# Install dependencies
RUN apt-get update && apt-get install -y \
apt-utils \
libonig-dev \
libpq-dev \
libpng-dev \
libzip-dev \
zip unzip \
git && \
docker-php-ext-install pdo && \
docker-php-ext-install pdo_pgsql && \
docker-php-ext-install pgsql && \
docker-php-ext-install bcmath && \
docker-php-ext-install gd && \
docker-php-ext-install zip && \
docker-php-ext-install mbstring && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
# Install XDebug
RUN pecl install xdebug \
&& docker-php-ext-enable xdebug
# Install composer
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
# Add user for laravel application
RUN groupadd -g 1000 www
RUN useradd -u 1000 -ms /bin/bash -g www www
# Copy existing application directory contents
COPY . /var/www
# Copy existing application directory permissions
COPY --chown=www:www . /var/www
# Change current user to www
USER www
# Expose port 9000 and start php-fpm server
EXPOSE 9000
CMD ["php-fpm"]