docker php alpine install composer

要在 Docker 容器中使用 PHP 和 Composer,您可以使用 Alpine Linux 作为基础镜像,并按照以下步骤安装 PHP 和 Composer:

创建一个新的 Dockerfile,使用 alpine 作为基础镜像:

FROM alpine:latest

更新包管理器并安装 PHP:

RUN apk update && apk add --no-cache php7

注意:这里安装的是 Alpine Linux 中的 PHP7 版本。如果需要安装其他版本的 PHP,可以替换 php7phpX,其中 X 为您需要的版本号。

安装 Composer:

RUN apk add --no-cache curl && \
    curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer

这里首先安装了 curl,然后下载并运行 Composer 的安装脚本,将 Composer 安装到 /usr/local/bin 目录下并重命名为 composer

运行容器:

CMD [ "php", "-v" ]

这里使用 php -v 命令作为默认命令来运行容器,以验证 PHP 和 Composer 是否已正确安装。

完整的 Dockerfile 如下:

FROM alpine:latest
RUN apk update && apk add --no-cache php7
RUN apk add --no-cache curl && \
    curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
CMD [ "php", "-v" ]

这样,您就可以在 Docker 中使用 PHP 和 Composer 了。您可以将 Dockerfile 中的 CMD 命令替换为您的 PHP 应用程序的启动命令。如果您需要安装其他 PHP 扩展程序,可以使用 apk add 命令来安装它们。

  • 基于 Alpine Linux 与 Debian 构建不同基础镜像。master 分支基于 Ali-OSM 加速,在国内环境,5 分钟快速完成构建容器集群,alpine 分支基于 Alpine Linux 官方镜像,适应非国内环境。debian 分支基于 Docker 官方 debian 基础镜像,整体镜像尺寸相对较大。 构建干净、轻量级 PHP 依赖环境、安装常用 PHP 扩展,支持 PHP CLI 与 PHP FPM 模式。PHP CLI 适用于命令行交互的项目,PHP FPM 搭配 Nginx,构建 PHP Web 应用环境。另外,PHP FPM 镜像基于 PHP CLI 基础镜像,最小化 PHP 容器镜像,高效利用资源。 Docker Hub 官网保留不同 Linux 版本、不同地域环境的 PHP 基础镜像。为提高在国内 Docker image 构建速度,PHP 容器基于阿里巴巴开源镜像服务 -ALi-OSM Alpine 快速完成容器构建。非国内环境,建议克隆项目 alpine 分支实现快速构建,同样也可以尝试 debain 分支。 提供 PHP CLI 模式独立运行容器:call-websockt 与 php-superviosr。call-websockt 运行基于 workman 的 PHP Socket 服务。php-supervior 实现基于 Supervisor 的队列服务。 + 独立配置容器运行时文件、容器运行日志与数据与宿主机分离,方便调试与再次构建容器。 支持 Nginx 虚拟站点、SSL 证书服务。配置参考 Nginx 中 cert 与 conf.d 目录文件。 支持多个虚拟站点之间的程序互通。参考这里了解多个项目间的通信问题。 使用 Docker Compose 编排容器,支持在开发、测试、生产环境中快速完成服务器搭建任务。
  •