[英]cannot enable ldap extension in php docker image
我正在使用 docker 圖像來構建一個 wordpress 網站。 它使用 3 個圖像,php、wordpress 和 mysql。 我正在使用的插件之一需要安裝並啟用 ldap 擴展。 當我嘗試激活插件時,它一直說未安裝 ldap。 我被卡住了,需要幫助才能讓它工作。
這是 yaml 文件。
version: '3.3'
services:
php:
build: .
wordpress:
depends_on:
- db
image: wordpress:latest
volumes:
- wordpress_files:/var/www/html
ports:
- "80:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: 11111111
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: 11111111
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: 11111111
volumes:
wordpress_files:
db_data:
這是 php docker 鏡像文件。
FROM php:7.4.1-fpm
RUN \
apt-get update && \
apt-get install -y libicu-dev && \
apt-get install libldap2-dev -y && \
docker-php-ext-install intl && \
docker-php-ext-enable intl && \
docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu/ && \
docker-php-ext-install ldap && \
docker-php-ext-enable ldap
php/wordpress 的 docker 鏡像不提供任何額外的 PHP 擴展或其他庫,即使流行插件需要它們。
有無數可能的插件,它們可能需要 PHP 支持的任何擴展。 包括每個存在的 PHP 擴展都會顯着增加圖像大小。
如果你需要額外的 PHP 擴展,你需要從這個鏡像創建你自己的鏡像。 php 圖像的文檔解釋了如何編譯附加擴展。
此外, wordpress Dockerfile有一個這樣做的例子。
您沒有在 docker-compose.yml 中使用 Dockerfile
在 docker-compose.yml 中嘗試以下操作:
wordpress:
depends_on:
- db
image:
context: .
dockerfile: relative/path/to/your/Dockerfile
container_name: wordpress
volumes:
- wordpress_files:/var/www/html
ports:
- "80:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: 11111111
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.