我是新来的docker,我试图设置它以便与Laravel 5.1一起运行。我目前收到以下错误将mbstring添加到docker image for laravel 5应用程序
Call to undefined function Illuminate\Foundation\Bootstrap\mb_internal_encoding() in /var/www/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/LoadConfiguration.php:43
我相信这是因为没有安装PHP mbstring
推广。我试图将php-mbstring
添加到Docker文件,但它似乎并没有工作。
这里是我的全部泊坞文件
FROM php:5.6.30-fpm
RUN apt-get update && apt-get install -y libmcrypt-dev \
mysql-client libmagickwand-dev --no-install-recommends \
&& pecl install imagick \
&& docker-php-ext-install mcrypt pdo_mysql \
&& docker-php-ext-install php-mbstring
我然后运行从应用程序文件夹sudo docker compose up
。这似乎并没有解决这个错误。我如何知道扩展是否正确安装?
编辑:我已经包括以下
version: '2'
services:
# The Application
app:
build:
context: ./
dockerfile: app.dockerfile
working_dir: /var/www
volumes:
- ./:/var/www
environment:
- "DB_PORT=3306"
- "DB_HOST=database"
# The Web Server
web:
build:
context: ./
dockerfile: web.dockerfile
working_dir: /var/www
volumes_from:
- app
ports:
- 8080:80
# The Database
database:
image: mysql:5.6
volumes:
- dbdata:/var/lib/mysql
environment:
- "MYSQL_DATABASE=homestead"
- "MYSQL_USER=homestead"
- "MYSQL_PASSWORD=secret"
- "MYSQL_ROOT_PASSWORD=secret"
ports:
- "33061:3306"
volumes:
dbdata:
感谢您的回复。我试图删除php-并仍然得到相同的错误。关于在以前的'docker-php-ext-install'上运行的很棒的提示。 – SamBremner
奇数。你可以在你的问题上发布你的docker-composer.yml,以便我们可以尝试重新创建这个问题? :) –
我已经将docker-compose.yml文件添加到我的问题中。当你有机会时请看看。谢谢。 – SamBremner