📅  最后修改于: 2023-12-03 14:40:49.474000             🧑  作者: Mango
在使用 Docker 容器运行 PHP 应用程序时,我们可能需要使用一些不同的扩展来扩展 PHP。在本文中,我们将介绍如何在 Docker 中添加 ext-mongodb 扩展。
在开始之前,请确保您已经安装了 Docker 和 Docker Compose,并且已经有一个基本的 Dockerfile。
为了在容器中添加 ext-mongodb 扩展,我们需要编辑 Dockerfile。在 Dockerfile 中,我们需要添加一些命令来安装和配置 ext-mongodb 扩展。
以下是一个简单的 Dockerfile 示例:
FROM php:7.2-fpm
RUN apt-get update \
&& apt-get install -y \
libssl-dev \
pkg-config \
&& pecl install mongodb \
&& docker-php-ext-enable mongodb
FROM php:7.2-fpm
:我们使用 php:7.2-fpm 基础映像作为基础映像。这个基础映像包含了 PHP 和 FPM。RUN apt-get update
:更新系统安装源。RUN apt-get install -y libssl-dev pkg-config
:安装 libssl 和 pkg-config。RUN pecl install mongodb
:安装 ext-mongodb 扩展。RUN docker-php-ext-enable mongodb
:启用 ext-mongodb 扩展。完成 Dockerfile 的编写后,我们需要使用 docker build
命令来构建 Docker 镜像。
docker build -t my-php-app .
上面的命令将会在当前目录下构建一个名为 my-php-app
的 Docker 镜像。
一旦构建完成,我们可以通过以下命令来运行容器:
docker run -it --rm \
-v $(pwd):/usr/src/myapp \
-w /usr/src/myapp \
my-php-app \
php index.php
-it
:表示以交互模式运行容器。--rm
:表示容器退出后自动删除。-v $(pwd):/usr/src/myapp
:将当前目录挂载到容器中的 /usr/src/myapp
目录中。-w /usr/src/myapp
:将工作目录设置为容器中的 /usr/src/myapp
目录。my-php-app
:表示要运行的 Docker 镜像。php index.php
:在容器中运行的命令。在本文中,我们介绍了如何在 Docker 中添加 ext-mongodb 扩展。我们编辑了 Dockerfile 并且通过 docker build
命令来构建 Docker 镜像,最后使用 docker run
命令来启动容器。