Aktivieren Sie die EXIF-Unterstützung, wenn Sie den WordPress-Docker-Container ausführen

Lesezeit: 2 Minuten

Ich versuche, eine WordPress-Site in der zu betreiben offizieller WordPress-Docker-Container.

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.

Mein docker-compose.yml ist hier: https://github.com/quis/quis.cc/blob/d89efebefc20f688afbd70f8d7a58e35380581e9/docker-compose.yml

Okay, ich habe es herausgefunden.

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

Benutzeravatar von Peter Drinnan
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

1437810cookie-checkAktivieren Sie die EXIF-Unterstützung, wenn Sie den WordPress-Docker-Container ausführen

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy