使用docker将yaml解析添加到php.ini文件中

时间:2016-09-13 22:36:45

标签: php docker yaml lumen

我正在尝试在yaml_parse_file容器上添加docker扩展名。 在Dockerfile我添加此行以在php.ini文件中添加扩展名:

echo 'extension=yaml.so' >> /usr/local/etc/php/php.ini

但是当我跑docker-compose build时,我收到了这个警告:

  

PHP警告:PHP启动:无法加载动态库'/usr/local/lib/php/extensions/no-debug-non-zts-20121212/yaml.so' - / usr / local / lib / php / extensions / no-debug-non-zts-20121212 / yaml.so:无法打开共享对象文件:第0行的“未知”中没有此类文件或目录

当我尝试使用yaml_parse()函数时,我收到此错误:

  

致命错误:调用未定义的函数yaml_parse()...

我要做的是从yaml项目中读取控制器内的Lumen文件。

如何使用yaml_parse_file启用docker扩展程序?

1 个答案:

答案 0 :(得分:1)

此PECL扩展未与PHP捆绑在一起,请参阅更多http://php.net/manual/en/yaml.installation.php。 只是在extension=yaml.so中添加php.ini并不能帮助您。您必须正确安装PECL扩展,例如如果你使用ubuntu图像

    $ sudo apt-get install php-pear libyaml-dev
    $ sudo pecl install yamL
    $ sudo sh -c "echo 'extension=yaml.so' >> /etc/php5/mods-available/yaml.ini"
    $ sudo php5enmod yaml