2017-04-22 29 views
0

我试图在official Wordpress Docker container内部运行一个Wordpress网站。运行Wordpress Docker容器时启用EXIF支持

我建立的Wordpress网站依赖于使用exif_read_data从照片中提取元信息。我知道PHP需要使用--with-exif标志进行配置才能使用。

这是<?php phpinfo() ?>的输出配置命令节,当我从泊坞窗容器中运行我的网站: './configure' '--with-config-file-path=/usr/local/etc/php' '--with-config-file-scan-dir=/usr/local/etc/php/conf.d' '--disable-cgi' '--enable-ftp' '--enable-mbstring' '--enable-mysqlnd' '--with-curl' '--with-libedit' '--with-openssl' '--with-zlib' '--with-apxs2' 'CFLAGS=-fstack-protector-strong '-fpic' '-fpie' '-O2'' 'LDFLAGS=-Wl,-O1 '-Wl,--hash-style=both' '-pie'' 'CPPFLAGS=-fstack-protector-strong '-fpic' '-fpie' '-O2''

我怎样才能重新配置PHP已经启用EXIF支持?我想继续使用官方的Wordpress Docker容器,因为它看起来运行得非常好。

docker-compose.yml是在这里:https://github.com/quis/quis.cc/blob/d89efebefc20f688afbd70f8d7a58e35380581e9/docker-compose.yml

回答

0

OK,我想它了。

可以通过运行docker-php-ext-install exif 命令来启用EXIF支持。该命令仅在构建容器时起作用。

我不能修改官方容器; Docker做这件事的方式(这是我不了解的部分)是在官方上建立我自己的容器。然后,当我建立我自己的容器时,我可以运行命令来启用EXIF支持。其他的一切都是从官方的WordPress容器中继承下来的。所以我做了一个名为Dockerfile文件包含此:

FROM wordpress:latest 

RUN docker-php-ext-install exif 

ENTRYPOINT ["docker-entrypoint.sh"] 
CMD ["apache2-foreground"] 

然后,我跑到这个shell命令从该文件构建一个图像:
docker build -t wordpress-exif .

然后,它只是指着码头工人组成的文件在的情况下,我的自定义 容器,而不是通用的。所以在docker-compose.yml我把image: wordpress:latest更改为image: wordpress-exif