专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏

virtuasa/php-dev Docker 镜像 - 轩辕镜像

php-dev
virtuasa/php-dev
提供PHP 5.3-8.3及NodeJS 18/20/22多版本的Docker开发专用镜像
0 次下载activevirtuasa镜像
🚀专业版镜像服务,面向生产环境设计
中文简介版本下载
🚀专业版镜像服务,面向生产环境设计

Docker Image - PHP DEV

镜像概述和主要用途

PHP开发专用Docker镜像,支持PHP 5.3-8.3版本和NodeJS 18/20/22版本,提供CLI、FPM、NGINX和Apache等多种运行环境,集成了开发所需的各种工具和扩展,旨在为PHP应用开发提供一致、便捷的开发环境。

镜像仓库信息

  • Docker Hub: virtuasa/php-dev
  • Smile Registry: registry.smile.fr/smile-suisse/

    可将镜像标签中的"virtuasa/"替换为"registry.smile.fr/smile-suisse/"以使用Smile仓库

镜像类型和标签说明

基础镜像
virtuasa/php-dev:bookworm-sury

基于Debian的基础镜像,包含基础工具。

PHP镜像

标签格式: virtuasa/php-dev:${PHP_VERSION}-${TYPE}-bookworm-sury

支持的PHP版本: 5.6, 7.0, 7.1, 7.2, 7.3, 7.4, 8.0, 8.1, 8.2, 8.3

CLI镜像

用于PHP命令行环境

  • 标签模板: virtuasa/php-dev:${PHP_VERSION}-cli-bookworm-sury
  • 示例: virtuasa/php-dev:8.3-cli-bookworm-sury
FPM镜像

包含PHP CLI和FPM服务

  • 标签模板: virtuasa/php-dev:${PHP_VERSION}-fpm-bookworm-sury
  • 示例: virtuasa/php-dev:8.3-fpm-bookworm-sury
NGINX镜像

包含PHP CLI和NGINX网站服务

  • 标签模板: virtuasa/php-dev:${PHP_VERSION}-nginx-bookworm-sury
  • 示例: virtuasa/php-dev:8.3-nginx-bookworm-sury
Apache镜像

包含PHP CLI和Apache网站服务

  • 标签模板: virtuasa/php-dev:${PHP_VERSION}-apache-bookworm-sury
  • 示例: virtuasa/php-dev:8.3-apache-bookworm-sury
带NodeJS的PHP镜像

标签格式: virtuasa/php-dev:${PHP_VERSION}-${TYPE}-node-${NODE_VERSION}-bookworm-sury

支持的NodeJS版本: 18, 20, 22

CLI镜像(带NodeJS)

用于PHP命令行环境,包含NodeJS工具

  • 标签模板: virtuasa/php-dev:${PHP_VERSION}-cli-node-${NODE_VERSION}-bookworm-sury
  • 示例: virtuasa/php-dev:8.3-cli-node-22-bookworm-sury
FPM镜像(带NodeJS)

包含PHP CLI、FPM服务和NodeJS工具

  • 标签模板: virtuasa/php-dev:${PHP_VERSION}-fpm-node-${NODE_VERSION}-bookworm-sury
  • 示例: virtuasa/php-dev:8.3-fpm-node-22-bookworm-sury
NGINX镜像(带NodeJS)

包含PHP CLI、NGINX网站服务和NodeJS工具

  • 标签模板: virtuasa/php-dev:${PHP_VERSION}-nginx-node-${NODE_VERSION}-bookworm-sury
  • 示例: virtuasa/php-dev:8.3-nginx-node-22-bookworm-sury
Apache镜像(带NodeJS)

包含PHP CLI、Apache网站服务和NodeJS工具

  • 标签模板: virtuasa/php-dev:${PHP_VERSION}-apache-node-${NODE_VERSION}-bookworm-sury
  • 示例: virtuasa/php-dev:8.3-apache-node-22-bookworm-sury

核心功能和特性

预装组件和工具
组件支持版本说明
PHP5.6-8.3核心PHP运行环境
XDebug全版本PHP调试工具
blackfire全版本PHP性能分析工具
composer全版本PHP依赖管理工具
local-php-security-checker全版本PHP安全检查工具
phive7.3+PHP归档管理工具
Apache全版本Web服务器
NGINX全版本Web服务器
MSMTP全版本SMTP客户端
NodeJs & npm18/20/22JavaScript运行时和包管理器(特定版本)
Yarn特定版本JavaScript包管理器
Debianbookworm基础操作系统
开发辅助功能
  • 内置XDebug支持,方便代码调试
  • Blackfire集成,支持性能分析
  • 多种PHP版本支持,便于多版本兼容性测试
  • 集成NodeJS环境,适合现代PHP应用开发
  • 灵活的环境变量配置,适应不同开发需求

使用场景和适用范围

适用场景
  • PHP应用程序开发环境
  • 多版本PHP兼容性测试
  • Web应用本地开发和调试
  • CI/CD流程中的自动化测试
  • 需要NodeJS工具链的PHP项目(如前端资源构建)
不适用场景
  • 生产环境部署(该镜像针对开发优化,非生产环境安全和性能优化)
  • 需要极端资源限制的环境

使用方法和配置说明

基础使用方法
使用Docker Run运行
bash
# PHP CLI示例
docker run --rm -v $(pwd):/data virtuasa/php-dev:8.3-cli-bookworm-sury php -v

# Apache示例
docker run -d -p 8080:80 -v $(pwd):/data virtuasa/php-dev:8.3-apache-bookworm-sury
Docker Compose示例
yaml
version: '3.9'

services:
  web:
    image: virtuasa/php-dev:8.3-nginx-node-22-bookworm-sury
    user: ${FIXUID:-1000}:${FIXGID:-1000}
    volumes:
      - .:/data
    ports:
      - "8080:80"
      - "443:443"
    environment:
      - HISTFILE=/data/var/.docker_bash_history
      - HISTFILESIZE=1000
      - DOCUMENT_ROOT=public
      - SSL_FORCE=yes
      - SERVER_NAMES=app.docker.local
      - XDEBUG_CLIENT_HOST=host.docker.internal
    extra_hosts:
      - 'host.docker.internal:host-gateway'
环境变量配置
基础镜像变量
变量名默认值描述
HOSTNAME_LOCAL_ALIAS``解析到127.0.0.1的主机名别名列表,用逗号分隔
FIXUID1000Docker用户UID,应设置为开发者的UID
FIXGID1000Docker用户GID,应设置为开发者的GID
DOCKER_TIMEZONEEurope/ZurichDocker容器时区
LANGC.UTF-8系统 locale
SMTP_MAILHUBsmtp.docker:25邮件发送主机,格式为host[:port],默认端口25
SMTP_AUTH_USER SMTP认证用户名,为空则不使用SMTP认证
SMTP_AUTH_PASS SMTP认证密码
SMTP_SENDER_HOSTNAME 发件人主机全名,未指定则查询主机名
DOCKER_CUSTOM_INIT 容器创建时执行的初始化脚本
DOCKER_COPY_DIR_TO_ETC 复制目录内容到/etc,并处理*.j2文件
DOCKER_COPY_DIR_TO_BIN 复制目录内容到/user/local/bin
DOCKER_MKDIR 使用mkdir -p创建指定目录
PHP镜像变量
变量名默认值描述
WRITABLE_PATHvarApache或Nginx可写文件夹列表,空格分隔
VAR_DIRvar应用程序日志存储目录
XDEBUG_MAIN_HOSTlocalhostCLI调试的XDEBUG主主机
XDEBUG_DISABLE 设置为"yes"禁用XDEBUG
XDEBUG_CLIENT_HOST XDEBUG客户端主机,建议值host.docker.internal
BLACKFIRE_CLIENT_ID Blackfire客户端ID
BLACKFIRE_CLIENT_TOKEN Blackfire客户端Token
BLACKFIRE_SERVER_ID Blackfire服务器ID
BLACKFIRE_SERVER_TOKEN Blackfire服务器Token
MOUNT_DIR/data容器内Docker挂载路径
PHP_MEMORY_LIMIT512MPHP脚本最大内存限制
ACL_ENABLE 设置为"yes"在容器启动时执行setfacl
PHP Apache变量
变量名默认值描述
DOCUMENT_ROOTpublicApache文档根目录路径,为空则使用项目根目录
SERVER_NAMES``服务器名称和别名,逗号分隔
SSL_CERT_KEY/etc/ssl/private/ssl-cert-snakeoil.keyApache SSL私钥路径
SSL_CERT_PEM/etc/ssl/certs/ssl-cert-snakeoil.pemApache SSL证书路径
SSL_CERT_CA``SSL证书链,PEM编码的CA证书
SSL_FORCE``设置为"yes"强制HTTP重定向到HTTPS
PHP Nginx变量
变量名默认值描述
DOCUMENT_ROOTpublicNginx文档根目录路径,为空则使用项目根目录
SERVER_NAMES``Nginx服务器名称,逗号分隔
SSL_CERT_KEY/etc/ssl/private/ssl-cert-snakeoil.keyNginx SSL私钥路径
SSL_CERT_PEM/etc/ssl/certs/ssl-cert-snakeoil.pemNginx SSL证书和证书链路径
SSL_FORCE``设置为"yes"强制HTTP重定向到HTTPS

注意:

  • 带*的路径是相对于Docker容器挂载路径,即项目根目录
  • 带**的路径是Docker容器内的绝对路径,如果需要,不要忘记添加/data挂载路径
FIXUID和FIXGID设置

如果主机Linux用户ID不是1000(可通过id命令检查),请将全局变量设置为您的会话ID:

bash
printf "FIXUID=`id -u`\nFIXGID=`id -g`" >> ~/.profile

使用docker-compose文件时,为容器设置user参数:

yaml
user: ${FIXUID:-1000}:${FIXGID:-1000}
Blackfire.io性能分析

要使用Blackfire.io分析PHP脚本,需要在官网创建个人账户。

在计算机上定义以下环境变量,从blackfire.io设置/凭据获取值:

bash
BLACKFIRE_CLIENT_ID="<Client ID>"
BLACKFIRE_CLIENT_TOKEN="<Client Token>"
BLACKFIRE_SERVER_ID="<Server ID>"
BLACKFIRE_SERVER_TOKEN="<Server Token>"

可将这些值放入~/.profile文件中,以便计算机重启后保留这些信息。无需重启计算机,只需导出变量并执行docker up。

分析方法:

  • Google Chrome
  • Firefox
  • PHP CLI:在docker内使用blackfire run <php命令>

特殊工具命令

PHP镜像工具
命令描述
xdebug-disable完全禁用XDebug,提高性能(HTTP和CLI)
xdebug-disable-autostart禁用每次HTTP调用时XDebug自动启动
xdebug-enable完全启用XDebug,用于调试(HTTP和CLI)
xdebug-enable-autostart启用每次HTTP调用时XDebug自动启动
php-xdebug <php脚本和参数>使用XDebug运行PHP CLI命令
php-no-xdebug <php脚本和参数>不使用XDebug运行PHP CLI命令
php-profile <php脚本和参数>运行带性能分析的PHP CLI命令,生成分析文件
docker-php-ext-disable ext-name [ext-name ...]禁用PHP扩展
docker-php-ext-enable ext-name [ext-name ...]启用PHP扩展
docker-php-ext-install ext-name [ext-name ...]安装PHP扩展
blackfire-disable禁用Blackfire.io模块和代理
blackfire-enable启用Blackfire.io模块和代理(自动禁用xdebug)
blackfire run <php脚本和参数>运行带Blackfire.io分析的CLI脚本(需先启用Blackfire)
local-php-security-checker运行PHP安全检查工具
composerPHP依赖管理工具

构建镜像

使用make help查看构建目标。

示例:

  • make all 构建所有镜像
  • make all-php 构建所有PHP镜像
  • make base php-8.3 php-8.3-node-18 构建特定版本镜像
查看更多 php-dev 相关镜像 →
serversideup/php-dev logo
serversideup/php-dev
by Server Side Up
这是serversideup/php的开发仓库,包含不稳定和过时的代码。
2100K+ pulls
上次更新:1 个月前
wayofdev/php-dev logo
wayofdev/php-dev
by wayofdev
本地开发用PHP镜像,预配置Xdebug及开发工具,支持多架构。
50K+ pulls
上次更新:6 天前
webdevops/php-dev logo
webdevops/php-dev
by webdevops
集成调试工具(如xdebug)的PHP运行环境,适用于PHP应用的调试开发。
8100K+ pulls
上次更新:1 个月前
chialab/php-dev logo
chialab/php-dev
by chialab
为部分官方PHP Docker镜像添加常用PHP扩展,适用于开发环境。
13100K+ pulls
上次更新:12 个月前
figured/php-dev logo
figured/php-dev
by figured
暂无描述
100K+ pulls
上次更新:6 天前
shin1x1/php-dev logo
shin1x1/php-dev
by shin1x1
用于PHP开发的Docker镜像,提供便捷、一致的PHP开发环境
2100K+ pulls
上次更新:13 天前

轩辕镜像配置手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

登录仓库拉取

通过 Docker 登录认证访问私有仓库

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

Docker Compose

Docker Compose 项目配置

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

宝塔面板

在宝塔面板一键配置镜像

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

极空间

极空间 NAS 系统配置服务

爱快路由

爱快 iKuai 路由系统配置

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

专属域名拉取

无需登录使用专属域名

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像支持哪些镜像仓库?

专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
virtuasa/php-dev
官方博客Docker 镜像使用技巧与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
提交工单
咨询镜像拉取问题请 提交工单,官方技术交流群:13763429
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
咨询镜像拉取问题请提交工单,官方技术交流群:
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.
轩辕镜像 官方专业版 Logo
轩辕镜像轩辕镜像官方专业版
首页个人中心搜索镜像

交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 13763429