phpqa icon indicating copy to clipboard operation
phpqa copied to clipboard

The LDAP PHP extension is not enabled. :-(

Open filoucrackeur opened this issue 2 years ago • 5 comments

Successfully extracted cache
Executing "step_script" stage of the job script
00:06
Using docker image sha256:803c688afae652c73220eeebef8b635bf730f41947e333d2c95921ac15d12b71 for jakzal/phpqa:php7.4-alpine with digest jakzal/phpqa@sha256:bc295c86dc517fb3cffe8fd1be442d47e8b76402409400dbc80b48b2758d8813 ...
$ phpstan analyse --ansi src
Note: Using configuration file /dd/phpstan.neon.
   0/113 [░░░░░░░░░░░░░░░░░░░░░░░░░░░░]   0%
  60/113 [▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░░░░░░░░░░░░]  53%
  80/113 [▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░░░░░░░]  70%
 113/113 [▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓] 100%
 -- --------------------------------------------------------------------------- 
     Error                                                                      
 -- --------------------------------------------------------------------------- 
     Internal error: Internal error: The LDAP PHP extension is not enabled. in  
     file                                                                       
     /dd/src/Command/MercureSseListenerCommand.p  hp                                                                         
     Run PHPStan with --debug option and post the stack trace to:               
     https://github.com/phpstan/phpstan/issues/new?template=Bug_report.md       
     Child process error (exit code 1):                                         
 -- --------------------------------------------------------------------------- 
                                                                                
 [ERROR] Found 2 errors                                                         
                                                                                
ERROR: Job failed: exit code 1

Is it possible to add php ldap extension ? if else how to workaround ?

cordialy

filoucrackeur avatar Jul 22 '21 08:07 filoucrackeur

It's hard to include every possible extension without bloating the image. Someone's always going to have that one additional dependency to add.

Currently, the quickest way to include your project's dependencies in the image is to create your own image that would extend phpqa:

FROM jakzal/phpqa:1.59

RUN apt-get -y update \
 && apt-get -y install libldb-dev libldap2-dev autoconf file g++ gcc libc-dev pkg-config re2c \
 && docker-php-ext-install ldap \
 && apt-get purge -y --auto-remove autoconf file g++ gcc libc-dev pkg-config re2c

Put the above code into a Dockerfile and build it with:

docker build . -t dfiloucrackeur/phpqa

jakzal avatar Jul 22 '21 11:07 jakzal

ok thanks but why do not generate an image big but with all standard extensions php with a docker tag ?

filoucrackeur avatar Jul 22 '21 19:07 filoucrackeur

Everyone has a different opinion on what "standard extensions" are. In my view the standard image should only contain bare minimum that everyone needs.

I'm open to having another version (tag) for a bloated image.

Related to #285.

jakzal avatar Jul 23 '21 07:07 jakzal

do you have the Dockerfile for alpine 74 ?

cordialy

filoucrackeur avatar Jul 27 '21 08:07 filoucrackeur

Alpine images are based on the php alipine image: https://github.com/jakzal/phpqa/blob/master/alpine/Dockerfile#L2

jakzal avatar Jul 27 '21 09:07 jakzal