Sign inSign up

jerrybendy/php-nginx

By jerrybendy

•Updated over 2 years ago

From PHP official image, and with nginx and frequently-used extensions built-in it.

Image
0

167

jerrybendy/php-nginx repository overview

⁠Nginx-php

基于 Docker hub 官方的 php-fpm 镜像构建,使用 php7 及 nginx 最新稳定版。

⁠版本信息

  • PHP 7.3.32
  • Nginx 1.20.1
  • OpenSSL 1.1.1l
  • nginx-ct 1.3.2
  • composer 1.8.4

⁠主要特性

  • 基于 Nginx 最新稳定版,及 OpenSSL,完全支持 HTTP/2 协议
  • 支持证书透明 (Certificate Transparency)
  • 内置最新版本的 composer

⁠内置的 PHP 扩展

除 PHP 内置的核心扩展外,还添加了以下扩展:

  • bcmath
  • curl
  • redis
  • mongodb
  • gd
  • soap
  • intl
  • mcrypt
  • zip
  • PDO
  • pdo_mysql
  • pdo_pgsql
  • pdo_sqlite
  • xsl
  • libxml
  • SimpleXML
  • Zend OPcache

⁠使用方法

⁠基本用法

镜像导出 80 和 443 两个端口,可用于 HTTP 和 HTTPS 环境,使用 -p 或 -P 参数绑定宿主机端口即可。

docker run --name test-server -p 8080:80 -p 8081:443 nginx-php

访问本机 http://localhost:8080 即可看到 phpinfo 的页面。

⁠自定义代码目录

镜像内使用 /var/www/html 作为默认的代码目录,只需将宿主机上的代码目录通过 -v 参数映射进去即可访问。

假设宿主机代码目录位于 /home/www/project 中:

docker run --name test-server \
    -p 8080:80 -p 8081:443 \
    -v /home/www/project:/var/www/html \
    nginx-php

访问 http://localhost:8080 即可看到自己的网站。

⁠自定义网站 Nginx 配置

默认网站的 Nginx 配置文件位于 /usr/local/nginx/conf/vhosts/default.conf,具体代码内容可参考当前项目的 conf/default.conf 文件。将此文件下载到本地并修改后使用 -v 参数映射到容器中即可。

docker run --name test-server \
    -p 8080:80 -p 8081:443 \
    -v /path/to/default.conf:/usr/local/nginx/conf/vhosts/default.conf \
    nginx-php
⁠运行多个网站

/usr/local/nginx/conf/vhosts/ 目录下是 Nginx 的虚拟服务器配置文件,可以把此目录映射出去,或在 default.conf 中添加多个 server 段的内容。

⁠目录信息

以下目录包含了一些重要的配置文件信息,可用于修改或覆盖

  • 默认代码目录: /var/www/html
  • PHP 配置文件目录: /usr/local/etc/php/conf.d/
  • 当前 PHP 配置文件: /usr/local/etc/php/conf.d/docker.ini
  • PHP-FPM 配置文件目录: /usr/local/etc/php-fpm.d/
  • Nginx 访问日志文件: /usr/local/nginx/logs/access.log
  • Nginx 主配置文件: /usr/local/nginx/conf/nginx.conf
  • Nginx 虚拟服务器配置文件目录: /usr/local/nginx/conf/vhosts/
  • Nginx 默认虚拟服务配置文件: /usr/local/nginx/conf/vhosts/default.conf
  • Nginx 访问日志: /usr/local/nginx/logs/access.log

Tag summary

Content type

Image

Digest

sha256:8ea9fca67…

Size

208.9 MB

Last updated

over 2 years ago

docker pull jerrybendy/php-nginx:p8.2-fpm