0

I have a dockerfile as below.

FROM php:8.0-fpm

RUN docker-php-ext-install pdo_mysql

RUN apt-get update \
    && apt-get install -y sudo \
    && apt-get install -y \
        curl \
        sed \
        zlib1g-dev \
        git \
        zip \
        unzip \
        nano \
        openssl \
        libssl-dev \
        libcurl4-openssl-dev \
        libxml2-dev \
    && apt-get clean -y \
    && docker-php-ext-install soap \
    && apt-get install -y zip libzip-dev \
    && docker-php-ext-install zip \
    && apt-get install -y supervisor

RUN apt-get update && apt-get install -y \
        libfreetype6-dev \
        libjpeg62-turbo-dev \
        libpng-dev \
    && docker-php-ext-configure gd --with-freetype --with-jpeg \
    && docker-php-ext-install -j$(nproc) gd

RUN ( \
                cd /tmp \
                && mkdir librdkafka \
                && cd librdkafka \
                && git clone https://github.com/edenhill/librdkafka.git . \
                && ./configure \
                && make \
                && make install \
            )
RUN apt-get install -y librdkafka-dev && pecl install rdkafka
RUN echo "extension=rdkafka.so" >> /usr/local/etc/php/conf.d/rdkafka.ini
RUN apt-get install -y cron
RUN apt-get update && apt-get install -y libpq-dev
RUN docker-php-ext-configure pgsql -with-pgsql=/usr/local/pgsql
RUN docker-php-ext-install pdo pdo_pgsql
RUN pecl install mongodb
RUN echo "extension=mongodb.so" >> /usr/local/etc/php/conf.d/mongodb.ini
RUN docker-php-ext-configure intl && docker-php-ext-install intl
RUN cd ~
RUN sudo curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer

RUN echo 'cd /var/www/html/app' >> ~/.bashrc

I think it installed the Kafka extension.Because rdkafka appears in the phpinfo output. However, Rdkafka is not installed as a PHP extension. Therefore, I cannot use kafka.

What could be the reason for this. What am I doing wrong for Docker.

OneCricketeer
  • 179,855
  • 19
  • 132
  • 245
Spartan Troy
  • 949
  • 2
  • 9
  • 13
  • 1) You don't need to compile anything if `librdkafka-dev` gives you want to want. 2) Are you sure `extension=rdkafka.so` or `/usr/local/etc/php/conf.d/rdkafka.ini` are correct? – OneCricketeer Apr 17 '22 at 13:55
  • You installed kafka in a correct way, I guess something else is not correct. please check `php -i | grep kafka` – Raftx24 Apr 17 '22 at 18:37

1 Answers1

1

OR

  • Compile librdkafka or install librdkafka-dev. Next, install rdkafka extension docker-php-ext-install rdkafka [detail] and enable docker-php-ext-enable rdkafka [detail].
Max
  • 11
  • 2