Dockerfile
下面的pecl install mongodb
的就是安装命令
FROM php:7.4.12-fpm
RUN mv /etc/apt/sources.list /etc/apt/sources.list.bak
COPY sources.list /etc/apt/
RUN apt-get update && apt-get upgrade -y \
&& apt-get install -y \
build-essential \
libmagickcore-dev \
libmagickwand-dev \
imagemagick \
libfreetype6-dev \
libjpeg62-turbo-dev \
libmcrypt-dev \
libpng-dev \
libzip-dev \
&& docker-php-ext-configure gd --with-jpeg=/usr/include --with-freetype=/usr/include/freetype2/ \
&& docker-php-ext-install -j$(nproc) gd iconv pdo_mysql mysqli bcmath calendar exif gettext sockets dba pcntl shmop sysvmsg sysvsem sysvshm \
&& pecl install redis-5.1.1 \
&& pecl install imagick \
&& pecl install mcrypt \
&& pecl install mongodb \
&& docker-php-ext-enable redis imagick mcrypt
看下docker-compose.yml文件
version: '3'
services:
php7.4:
image: "php7.4"
build: ./php
container_name: php7.4
restart: always
#ports:
# - "8571:9000"
networks:
- default
volumes:
- ../nginx/html:/var/www/html:rw
- ./conf:/usr/local/etc:rw
stdin_open: true
tty: true
networks:
default:
external:
name: aimore
编辑配置文件
vim conf/php/conf.d/docker-php-ext-mongodb.ini
extension=mongodb.so
重新编译镜像
docker-compose build && docker-compose up -d
检查是否安装成功
docker exec -it php7.4 /bin/bash
pho -m
查看列表里是否有mongodb,有则安装成功