Die von mir erstellte WordPress-Site basiert auf der Verwendung von exif_read_data um Metainformationen aus Fotos zu extrahieren. Ich verstehe, dass PHP mit dem konfiguriert werden muss --with-exif Flag, damit dies funktioniert.
Dies ist das Befehl konfigurieren Abschnitt von <?php phpinfo() ?>‘s-Ausgabe, wenn ich meine Site über den Docker-Container ausführe:
'./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''
Wie kann ich PHP neu konfigurieren, um die EXIF-Unterstützung zu aktivieren? Ich möchte weiterhin den offiziellen WordPress-Docker-Container verwenden, da er ansonsten sehr gut zu funktionieren scheint.
Die EXIF-Unterstützung kann durch Ausführen von aktiviert werden docker-php-ext-install exif
Befehl. Dieser Befehl funktioniert nur beim Erstellen des Containers.
Ich kann den offiziellen Container nicht ändern; Der Docker-Weg, dies zu tun (was ich nicht verstanden habe), besteht darin, meinen eigenen Container auf dem offiziellen zu erstellen. Wenn ich dann meinen eigenen Container baue, kann ich den Befehl ausführen, um die EXIF-Unterstützung zu aktivieren. Alles andere wird vom offiziellen WordPress-Container geerbt. Also habe ich eine Datei mit dem Namen erstellt Dockerfile enthält diese:
FROM wordpress:latest
RUN docker-php-ext-install exif
ENTRYPOINT ["docker-entrypoint.sh"]
CMD ["apache2-foreground"]
Dann habe ich diesen Shell-Befehl ausgeführt, um ein Image aus dieser Datei zu erstellen: docker build -t wordpress-exif .
Dann muss die Docker-Compose-Datei nur auf meinen benutzerdefinierten Container und nicht auf den generischen Container verweisen. Also rein docker-compose.yml ich habe mich verändert image: wordpress:latest zu image: wordpress-exif.
Ich habe versucht, exif wie andere Antworten zu installieren und zu aktivieren, aber kein Glück.
Schließlich hat es funktioniert, indem ich das Paket hinzugefügt habe.
RUN apk add --no-cache php7-exif
ich benutzte php:7.4-alpine
Peter Drinnen
Wenn Sie PHP 7.2+ verwenden, ist die Exif-Erweiterung möglicherweise bereits installiert, aber deaktiviert. Fügen Sie Dockerfile diese Zeile hinzu, um es zu aktivieren:
RUN docker-php-ext-enable exif
docker-php-ext-install ruft schon auf docker-php-ext-enable. Quelle
– Martin
3. November 2022 um 11:12 Uhr
14378100cookie-checkAktivieren Sie die EXIF-Unterstützung, wenn Sie den WordPress-Docker-Container ausführenyes