轩辕镜像 官方专业版
轩辕镜像
专业版
轩辕镜像 官方专业版
轩辕镜像
专业版
首页个人中心搜索镜像
交易
充值流量¥7起我的订单
文档
工具
提交工单页面收录
php

shinsenter/php

shinsenter

简化的PHP Docker镜像,便于轻松定制和扩展设置。

34 次收藏下载次数: 0状态:社区镜像维护者:shinsenter仓库类型:镜像最近更新:5 天前
让 AI 帮你使用轩辕镜像? · 展开查看说明 · 点击收起说明

如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。

只需在 AI 对话中先发送下面这句话即可:

请先完整阅读并严格遵守以下文档中的全部规则与要求:

https://xuanyuan.cloud/agents.md

在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。

查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。

DockerHub 官方简介
轩辕镜像中文简介
下载命令
镜像标签列表与下载命令
使用轩辕镜像,把时间还给真正重要的事。
点击查看

PHP Docker Images

📦 Simplified PHP Docker images for effortless customization and extension setup.

Our Docker images cover PHP versions from 5.6 to 8.5 (beta), available in CLI, ZTS, FPM, FPM/Apache2, FPM/Nginx, RoadRunner and FrankenPHP variants. The Docker images are available for both Debian and Alpine versions.

  • Docker Hub: https://hub.docker.com/r/shinsenter/php
  • GitHub Packages: https://code.shin.company/php/pkgs/container/php
  • You can also find and use https://hub.docker.com/u/shinsenter.

https://code.shin.company/php/actions/workflows/build-all.yml/badge.svg](https://code.shin.company/php/actions/workflows/build-all.yml)

Table of Contents

  • Introduction
  • Docker Image Variants
  • Customizing Settings via Environment Variables
  • Pre-installed PHP Extensions
  • Adding PHP Extensions
  • Application Directory
  • Customizing Container User and Group in Docker
  • Hooks
  • Autorun Scripts
  • Using Cron Jobs
  • Customize Supervisor Command
  • Sending Emails
  • Debug Mode
  • Other System Settings
  • Supported Platforms
  • Stable Image Tags
  • Contributing
  • License

Introduction

Our PHP Docker images are based on the https://hub.docker.com/_/php. These images facilitate the easy adjustment of PHP and PHP-FPM settings using environment variables, eliminating the need to rebuild images when making configuration changes.

These images also come with the latest version of https://getcomposer.org and popular web servers like [] [] RoadRunner or [***] This setup allows for faster project initiation without additional installations.

🪶 Info: While built on the official PHP images and including more useful extensions, we have significantly reduced the image sizes compared to the base images. This optimization improves download times and resource usage without sacrificing functionality, thanks to the https://code.shin.company/docker-squash project.

Docker Image Variants

Our image tags cover PHP versions from 5.6 to 8.5, available in cli, zts, fpm, fpm-nginx, fpm-apache, roadrunner(1), and frankenphp(2) variants. The Docker images are available for both Debian and Alpine versions.

Examples:

  • shinsenter/php:8.3-cli
  • shinsenter/php:8.4-zts
  • shinsenter/php:8.5-fpm
  • shinsenter/php:8.1-fpm-apache
  • shinsenter/php:8.2-fpm-nginx
  • shinsenter/php:8.3-roadrunner (1)
  • shinsenter/php:8.4-frankenphp (2)

(1): PHP with RoadRunner server. The roadrunner variant supports PHP >= 8.0.
(2): FrankenPHP is still in BETA. The frankenphp variant supports PHP >= 8.2.

Explore all available tags on our https://hub.docker.com/r/shinsenter/php/tags.

Examples

You can easily run a container by copying and pasting one of these docker run commands:

CLI

shell
# non-interactive
docker run --rm shinsenter/php:8.5-cli php -m

# interactive
docker run -it -v ./myproject:/var/www/html shinsenter/php:8.5-cli

PHP-FPM

shell
docker run -v ./myproject:/var/www/html -p 9000:9000 shinsenter/php:8.5-fpm

PHP-FPM + Nginx (or Apache, RoadRunner, FrankenPHP)

shell
# with Nginx
docker run -v ./myproject:/var/www/html -p 80:80 -p 443:443 shinsenter/php:8.5-fpm-nginx

# with Apache
docker run -v ./myproject:/var/www/html -p 80:80 -p 443:443 shinsenter/php:8.5-fpm-apache

# with RoadRunner
docker run -v ./myproject:/var/www/html -p 80:80 -p 443:443 shinsenter/php:8.4-roadrunner

# with FrankenPHP
docker run -v ./myproject:/var/www/html -p 80:80 -p 443:443 shinsenter/php:8.4-frankenphp

Customizing Settings via Environment Variables

These images allow customizing PHP and PHP-FPM settings through environment variables instead of rebuilding images.

The environment variable names follow these conventions:

  • Variables are prefixed with PHP_ to avoid conflicts with other application variables.
  • The rest of the variable name matches the configuration directive name from php.ini or php-fpm.conf:
    • PHP ini directives: https://www.php.net/manual/en/ini.list.php
    • PHP-FPM directives: https://www.php.net/manual/en/install.fpm.configuration.php
  • Directive names are converted to CONSTANT_CASE - uppercase with underscores instead of dots or dashes.

This naming convention helps you easily identify which environment variable applies to which PHP/PHP-FPM configuration directive.

👉🏻 Info: By default, the $PHP_* environment variables only take effect when set before starting the container. To dynamically change PHP configurations using $PHP_* environment variables while running commands within the container, you need to start your container with the ALLOW_RUNTIME_PHP_ENVVARS=1 environment variable.

💡 Hint: Run php-envvars in the container to get a full list of default $PHP_* environment variables.

Examples

Command Line

shell
docker run \
    -v ./myproject:/var/www/html \
    -e PHP_DISPLAY_ERRORS='1' \
    -e PHP_POST_MAX_SIZE='100M' \
    -e PHP_UPLOAD_MAX_FILESIZE='100M' \
    -e PHP_SESSION_COOKIE_HTTPONLY='1' \
    shinsenter/php:8.5 php -i

With docker-compose.yml

yaml
services:
  web:
    image: shinsenter/php:8.5-fpm-nginx
    environment:
      PHP_DISPLAY_ERRORS: "1"
      PHP_POST_MAX_SIZE: "100M"
      PHP_UPLOAD_MAX_FILESIZE: "100M"
      PHP_SESSION_COOKIE_HTTPONLY: "1"

Explanation

Environment VariableExplanationEquivalent Configuration
PHP_DISPLAY_ERRORS=1Enables displaying errors during development.display_errors 1
PHP_POST_MAX_SIZE=100MIncreases the maximum post size from the default 8MB.post_max_size 100M
PHP_UPLOAD_MAX_FILESIZE=100MIncreases the maximum upload file size from the default 2MB.upload_max_filesize 100M
PHP_SESSION_COOKIE_HTTPONLY=1Enables the HttpOnly flag for session cookie security.session.cookie_httponly 1

💡 Hint: Run php-envvars in the container to get a full list of default $PHP_* environment variables.

Pre-installed PHP Extensions

Popular PHP extensions are pre-installed by default, allowing projects to get started faster without additional installation.

list
apcu
bcmath
calendar
exif
gd
gettext
igbinary
intl
msgpack
mysqli
opcache
pcntl
pdo_mysql
pdo_pgsql
pgsql
redis
sodium
tidy
uuid
yaml
zip

👉🏻 Info: The pre-installed PHP extensions from the official Docker images are excluded from this list.

💡 Hint: Run docker run --rm shinsenter/php:8.5-cli php -m in the container to get a list of extensions (you can replace 8.5 with a specific PHP version).

Adding PHP Extensions

These images use a simple command called phpaddmod to install PHP extensions.

You don't need to run the more complex docker-php-ext-install command or manually edit the php.ini file; phpaddmod handles the installation and configuration for you.

For example, in your Dockerfile:

Dockerfile
FROM shinsenter/php:8.5-fpm-nginx

# Install imagick, swoole and xdebug
RUN phpaddmod imagick swoole xdebug

# Add your instructions here
# For example:
# ADD --chown=$APP_USER:$APP_GROUP ./myproject/ /var/www/html/

👉🏻 Info: The phpaddmod command is a wrapper around the https://github.com/mlocati/docker-php-extension-installer utility, which takes care of all required steps to compile and activate the extensions.

💡 Hint: If you're having trouble figuring out which extensions can be installed, have a look at https://github.com/mlocati/docker-php-extension-installer/blob/master/README.md#supported-php-extensions.

Application Directory

The default application directory is /var/www/html and can be customized via the $APP_PATH environment variable:

shell
docker run -p 80:80 -p 443:443 -p 443:443/udp \
    -v "$PWD":/app \
    -e APP_PATH=/app \
    shinsenter/php:8.5-fpm-nginx

This changes the web application directory to /app.

Moreover, the default document root (a relative path inside the $APP_PATH (application directory) that contains your index.php file) can be customized by setting the $DOCUMENT_ROOT environment variable:

shell
docker run -p 80:80 -p 443:443 -p 443:443/udp \
    -v "$PWD":/app \
    -e APP_PATH=/app \
    -e DOCUMENT_ROOT=public \
    shinsenter/php:8.5-fpm-nginx

This would change the document root path to /app/public.

Customizing Container User and Group in Docker

Override the default user and group settings by setting environment variables when running the container.

Available variables:

Environment VariableDescriptionDefault
APP_USERUsername inside the containerwww-data
APP_GROUPGroup name inside the containerwww-data
APP_UIDNumeric UID of the userUID in container
APP_GIDNumeric GID of the groupGID in container

For example, to run a container as user myapp with UID 5000:

shell
docker run -p 80:80 -p 443:443 -p 443:443/udp \
    -e APP_USER=myapp \
    -e APP_UID=5000 \
    shinsenter/php:8.5-fpm-nginx

Or in a docker-compose.yml:

yaml
services:
  web:
    image: shinsenter/php:8.5-fpm-nginx
    environment:
      APP_USER: "myapp"
      APP_UID: "5000"

Hooks

Hooks are useful for customizing the behavior of a running container.
These images support the following hooks:

Hook nameDescriptionExample usage
onbootRuns when the container starts or restarts.Send startup notification.
first-runRuns only the first time the container starts.Initialize database.
rebootedRuns whenever the container restarts.Check crash logs.
migrationRuns migration scripts.Run DB migrations.
onreadyRuns after migration, when the app is nearly ready.Warm up caches.
onliveRuns after the web server starts (if included).Trigger webhook.

To use hooks, create a hooks folder inside $APP_PATH and add executable files named after the hook, or in subfolders with the same name. Example: to install PHP modules at first-run, add a script hooks/first-run or hooks/first-run/install-modules.

Set DEBUG=1 to see which hooks are executed.

Autorun Scripts

Shell scripts placed in the /startup/ directory will automatically run when the container starts, in alphabetical order by filename. This feature can initialize projects before the main program runs, saving time by executing initialization scripts automatically.

Usage Example

Copy a script called 00-migration into /startup/ via a Dockerfile:

Note: Ensure the script has executable permissions.

Dockerfile
FROM shinsenter/php:8.5-cli

ADD ./autorun/00-migration /startup/00-migration
RUN chmod +x /startup/00-migration

# Add your instructions here
# For example:
# ADD --chown=$APP_USER:$APP_GROUP ./myproject/ /var/www/html/

👉🏻 Info: The startup directory already includes a script called 99-greeting that prints a welcome message when the container starts.

Disable Autorun Scripts

To disable autorun scripts, set DISABLE_AUTORUN_SCRIPTS=1 as an environment variable.

For example, with docker run:

shell
docker run -e DISABLE_AUTORUN_SCRIPTS=1 shinsenter/ubuntu-s6:latest bash

Or in docker-compose.yml:

yaml
services:
  web:
    image: shinsenter/ubuntu-s6:latest
    environment:
      DISABLE_AUTORUN_SCRIPTS: "1"

Using Cron Jobs

Note: This is a supporting feature. If you require more advanced capabilities beyond basic crontab functionality, please *** building your own Docker image and installing an alternative scheduling tool (e.g., https://github.com/aptible/supercronic) that better suits your needs.

To enable cron jobs in containers, you can start the container with ENABLE_CRONTAB=1. This setting activates the Crontab service, which loads settings from the directory specified by $CRONTAB_DIR (default is /etc/crontab.d).

The cron jobs will run as the user defined by $APP_USER:$APP_GROUP, which by default is www-data:www-data, and with the home directory set by $CRONTAB_HOME (default is /var/www/html).

Here is an example Dockerfile to add a crontab:

Dockerfile
FROM shinsenter/php:latest

ENV ENABLE_CRONTAB=1

# create crontab entry via RUN instruction
RUN echo '* * * * * echo "echo This line will run every minute!" | tee /tmp/cron-every-minute.txt' >> /etc/crontab.d/sample1;

# or copy crontab entries via ADD instruction
ADD ./sample2 /etc/crontab.d/

The format of a crontab entry is as follows:

# Job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  *  command to be executed

You can also easily set up cron jobs through the $CRONTAB_SETTINGS environment variable in the docker-compose.yml file. When the container starts, these settings are loaded into crontab, giving you more flexibility to change them later.

yml
services:
  web:
    image: shinsenter/php:8.5-fpm-nginx
    environment:
      ENABLE_CRONTAB: "1"
      CRONTAB_SETTINGS: "* * * * * echo 'This line will run every minute!' | tee /tmp/cron-every-minute.txt"

For more information on environment variables for cron jobs, refer to the Other System Settings section below.

Customize Supervisor Command

We can set a $SUPERVISOR_PHP_COMMAND environment variable to the service definition in your application's docker-compose.yml file. This environment variable will contain the command that the container will use to serve your application using another process instead of the default process.

Command Line

shell
docker run \
    -e SUPERVISOR_PHP_COMMAND='php -S localhost:80 index.php' \
    shinsenter/php:8.5

With docker-compose.yml

yml
services:
  web:
    image: shinsenter/php:8.5
    environment:
      SUPERVISOR_PHP_COMMAND: "php -S localhost:80 index.php"

Sending Emails

In these Docker images, sendmail has been replaced by msmtp for sending emails. You can send emails using common PHP libraries like https://github.com/PHPMailer/PHPMailer.

If you prefer to use PHP's mail() function, you'll need to configure SMTP using the following environment variables in your container:

Environment VariableDescriptionExample Value
SMTP_HOSTThe hostname or IP address of the SMTP server.smtp.gmail.com
SMTP_PORTPort number used to connect to the SMTP server.587
SMTP_LOGFile path to store SMTP email logs./path/to/email.log
SMTP_FROMThe sender's email address.admin@example.com
SMTP_USERUsername used for SMTP authentication.your_smtp_username
SMTP_PASSWORDPassword used for SMTP authentication.your_smtp_password
SMTP_AUTHWhether SMTP authentication is required.on
SMTP_TLSWhether to use TLS for secure connection.on

💡 Hint: If you don't have an SMTP server available (like Gmail) to send emails, you can try using another container such as https://hub.docker.com/r/axllent/mailpit to act as an SMTP server.

If you're using Mailpit, you only need to set the following two environment variables in your container: SMTP_HOST=mailpit and SMTP_PORT=1025.

Debug Mode

Enable "debug mode" for more verbose logging by setting DEBUG=1 as an environment variable. This can be used both with docker run and in docker-compose.yml.

Command Line

shell
docker run -e DEBUG=1 shinsenter/php:8.5-fpm-nginx

With docker-compose.yml

yml
services:
  web:
    image: shinsenter/php:8.5-fpm-nginx
    environment:
      DEBUG: "1"

Other System Settings

These Docker images include additional environment variables for fine-tuning container behavior:

Setting NameDefault ValueDescriptionExample
DEFAULT_LOG_PATH/proc/1/fd/2Specifies where logs are written. By default, logs are sent to the container’s standard output./var/log/container.txt
DEBUG or DEBUG_MODENot setEnables verbose logging when set to 1.1
TZUTCSets the container’s default timezone. See the full list of timezones.Asia/Tokyo
ALLOW_RUNTIME_PHP_ENVVARSNot setAllows $PHP_* environment variables to override PHP configurations at runtime.1
INITIAL_PROJECTNot setSpecifies the Composer project to create if the application directory is empty.
※ If the value is a URL ending in *.zip, *.tar.gz or *.git, the container will download and extract the archive to the application directory.
laravel/laravel
INITIAL_PROJECT_GIT_OPTIONSNot setThe parameter will be passed to the git clone command if $INITIAL_PROJECT is set and is a URL ending with .git.-b develop
DISABLE_AUTORUN_SCRIPTSNot setDisables all autorun scripts when set to 1.1
DISABLE_AUTORUN_CREATING_PROJECTNot setPrevents automatic project creation when set to 1. By default, Composer will create a project if $INITIAL_PROJECT is set and the application directory is empty.1
DISABLE_AUTORUN_COMPOSER_INSTALLNot setSkips composer install during startup when set to 1. By default, the command runs if composer.json exists but dependencies are missing.1
DISABLE_AUTORUN_GENERATING_INDEXNot setSkips creation of index.php when set to 1. By default, an index.php file is generated in $DOCUMENT_ROOT if it doesn't already exist.1
DISABLE_AUTORUN_FIX_OWNER_GROUPNot setDisables automatic correction of ownership for the application directory when set to 1.1
DISABLE_GREETINGNot setSuppresses the startup greeting message when set to 1.1
COMPOSER_OPTIMIZE_AUTOLOADERNot setWhen set to 1, enables Composer's optimized autoloader (--optimize-autoloader) during install, improving performance in production.1
ENABLE_SSHDNot setWhen set to 1, enable the SSH server inside the container.1
SSHD_AUTHORIZED_KEYSNot setPublic SSH keys (one per line) that will be added to the container's ~/.ssh/authorized_keys for authentication.ssh-rsa XXXX...
ENABLE_CRONTABNot setEnables the Crontab service when set to 1, loading job definitions from $CRONTAB_DIR (default: /etc/crontab.d).1
ENABLE_CRONTAB_DEBUGNot setWhen set to 1, adds a debug cron job that runs every minute and prints environment variables visible to cron.1
CRONTAB_DIR/etc/crontab.dDirectory where cron job definitions are located. Jobs run as the user specified in $APP_USER./path/for/crontab/schedules
CRONTAB_HOME$APP_PATHSets the $HOME directory used during cron job execution./path/for/crontab
CRONTAB_MAILTONot setEmail address to receive cron job output.admin@example.com
CRONTAB_PATH$PATHDefines the executable search path used by cron jobs./path/for/crontab/bin
CRONTAB_SETTINGSNot setAllows defining cron jobs directly in docker-compose.yml, making it easy to manage scheduled tasks inside the container.0 0 * * * echo "Hello new day!"
CRONTAB_SHELL/bin/shSpecifies the default shell used for cron job execution./bin/bash
CRONTAB_TZ$TZSets the timezone for cron jobs. See the full list of timezones.Asia/Tokyo
SUPERVISOR_PHP_COMMANDNot setOverrides the container’s default entrypoint with a custom PHP command to serve the application.php -S localhost:80 index.php
ENABLE_TUNING_FPMNot enabledEnables automatic tuning of PHP-FPM settings when set to 1.1
ENABLE_TUNING_MPMNot enabledEnables automatic tuning of Apache MPM settings when set to 1.1

Supported Platforms

Check our https://hub.docker.com/r/shinsenter/php/tags for all available platforms. The Docker images are available for both Debian and Alpine versions.

Stable Image Tags

For stable versions (with date tagged) you can depend on in production, we also apply version tags on another repository.

👉🏻 View Stable Tags: https://hub.docker.com/r/shinsenter/php-archives/tags

Contributing

If you find these images useful, *** donating via *** or opening an issue on https://code.shin.company/php/issues/new.

Your support helps maintain and improve these images for the community.

License

This project is licensed under the terms of the https://code.shin.company/php/blob/main/LICENSE.

Please respect the intellectual efforts involved in creating these images. If you intend to copy or use ideas from this project, proper credit is appreciated.


From Vietnam 🇻🇳 with love.

镜像拉取方式

您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

轩辕镜像加速拉取命令点我查看更多 php 镜像标签

docker pull docker.xuanyuan.run/shinsenter/php:<标签>

使用方法:

  • 登录认证方式
  • 免认证方式

DockerHub 原生拉取命令

docker pull shinsenter/php:<标签>

轩辕镜像配置手册

按平台快速找到配置文档

一键安装

一键安装 Docker

Linux Docker 一键安装

AI

用 AI 使用轩辕镜像

agents.md · AI 对话 · 提示词

Docker

登录仓库拉取

登录认证 · 私有仓库

专属域名拉取

免登录 · 高速拉取

Linux

Docker 镜像配置

Windows / Mac

Docker Desktop 配置

MacOS OrbStack

OrbStack 容器

Apple Container

macOS 原生容器

Docker Compose

Compose 项目配置

NAS

群晖

Synology 配置

飞牛

fnOS 镜像配置

绿联

绿联 NAS

威联通

QNAP 配置

极空间

极空间 NAS

Unraid

Unraid NAS

企业仓库

其他仓库

ghcr · Quay · nvcr

Harbor 镜像源

Proxy Repository 对接

Portainer 镜像源

Registries 配置

Nexus 镜像源

Docker Proxy 缓存

开发工具

Dev Containers

VS Code 开发容器

Podman

Podman 配置指南

Singularity / Apptainer

HPC 科学计算容器

Kubernetes

K8s Containerd

Kubernetes · Containerd

K3s

轻量级集群

面板 / 网络

爱快路由

爱快 4.0 · iKuai 镜像加速

宝塔面板

一键配置镜像源

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

镜像拉取常见问题

功能

版本功能对比

功能对比 · 版本选择

支持的镜像仓库

Docker Hub · GCR · GHCR

专属域名用法

专属域名 · 开启停用 · 多仓库

新手拉取配置

登录 · 专属域名 · 配置

docker search 限制

专属域名 · Hub 搜索

不支持 push

仅支持 pull · 不支持

拉取速度原因

带宽 · 缓存 · 冷热镜像

错误码

402 与流量用尽

402 · 流量包 · 充值

401 认证失败

401 · docker login

manifest unknown

标签错误 · 镜像不存在

410 Gone 排查

410 · Docker 升级

429 限流

免费版 · 专业版 · 企业版 · 请求频率

其他报错

DNS 超时

DNS 解析 · 网络超时

TLS 证书失败

no matching manifest(架构)

账号

失败是否计费

manifest · blob · 计费

申请开票(企业 / 个人)

开票 · 发票 · 工单

修改登录密码

网站 · 仓库 · 重置

注销账户

工单 · 数据 · 注销

原理

mirrors 不生效

daemon.json · 重启

去掉域名前缀

docker tag · 重命名

指定架构拉取

ARM64 · AMD64 · 多架构

latest 与「最新」

digest · 版本号 · 标签

查看全部问题→

用户好评

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

用户头像

oldzhang

运维工程师

Linux服务器

5

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

轩辕镜像
镜像详情
...
shinsenter/php
定价查看流量套餐与价格
博客Docker 镜像公告与技术博客
专业版 · 高速稳定拉取镜像
高速镜像下载·在线技术支持·99.95% SLA 保障·付费会员免广告
50GB 仅 ¥7/年
专业版 · 高速稳定拉取镜像
50GB 仅 ¥7/年
高速镜像下载·在线技术支持·99.95% SLA 保障·付费会员免广告
用户协议·隐私政策·增值电信业务经营许可证:浙B2-20261007·©2024-2026 源码跳动©2024-2026 杭州源码跳动科技有限公司·商务合作:点击复制邮箱

更多 php 镜像推荐

php logo

library/php

Docker 官方镜像
PHP脚本语言虽最初为Web开发设计,却兼具通用目的用途,作为一种广泛应用的服务器端脚本语言,它能高效处理动态网页生成、数据库交互等Web开发核心任务,同时也可用于编写命令行脚本、开发桌面应用及进行系统管理等非Web领域,凭借其简洁语法与跨平台特性,成为众多开发者在不同场景下的实用工具。
7.9千 次收藏10亿+ 次下载
4 天前更新
circleci/php logo

circleci/php

circleci
为CircleCI优化的PHP扩展镜像,基于官方PHP镜像构建,便于在CircleCI环境中使用,支持Docker和CircleCI的快速采用,实验性镜像建议固定版本或自定义构建。
36 次收藏1000万+ 次下载
4 年前更新
cimg/php logo

cimg/php

cimg
CircleCI PHP便捷镜像,专为PHP项目在CircleCI平台上的持续集成流程设计,提供预配置环境以简化集成部署。
7 次收藏1000万+ 次下载
25 天前更新
serversideup/php logo

serversideup/php

serversideup
适合生产环境的PHP Docker镜像,针对Laravel和WordPress进行了优化。
62 次收藏100万+ 次下载
12 天前更新
devwithlando/php logo

devwithlando/php

devwithlando
Lando是一款受专业开发者信赖的本地开发和DevOps工具,可帮助用户摆脱低效开发工具的束缚,节省时间与精力,专注于实际工作。
19 次收藏100万+ 次下载
1 个月前更新
paketobuildpacks/php logo

paketobuildpacks/php

paketobuildpacks
暂无描述
1 次收藏500万+ 次下载
1 年前更新

查看更多 php 相关镜像

更多相关 Docker 镜像与资源

以下是 shinsenter/php 相关的常用 Docker 镜像,适用于 Web 开发、内容管理、传统应用 等不同场景:

  • library/php Docker 镜像说明(PHP 运行时,适合传统 Web 应用)
  • serversideup/php Docker 镜像说明(PHP 运行时环境,ServerSideUp 维护版本)
  • cimg/php Docker 镜像说明(PHP 运行时,CI/CD 优化版本,适合持续集成环境)
  • chainguard/php Docker 镜像说明(Chainguard 安全加固 PHP 镜像,适合供应链安全 PHP 服务)
  • digiticketsgroup/php Docker 镜像说明(Php 镜像变体,适合 Php、Wordpress、Nextcloud 相关部署场景)