专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏
轩辕镜像 官方专业版
轩辕镜像 官方专业版轩辕镜像 官方专业版官方专业版
首页个人中心搜索镜像

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

官方QQ群: 1072982923

docphpro/nginx Docker 镜像 - 轩辕镜像

nginx
docphpro/nginx
docphpro
包含SSL配置(通配符证书*.phpro.local)和includes目录的Nginx镜像,支持SSL代理、HTTP/2,可通过环境变量配置服务器名称,适用于需要HTTPS代理的开发环境部署。
0 次下载
💣 CI/CD 卡在拉镜像?问题不在代码,在镜像源
中文简介版本下载
💣 CI/CD 卡在拉镜像?问题不在代码,在镜像源

Nginx 镜像文档

镜像概述

本镜像为定制化Nginx服务器镜像,预配置SSL支持及includes目录,旨在简化开发环境中的HTTPS代理部署。镜像包含默认SSL证书路径、预定义的includes配置片段,支持通过环境变量动态配置服务器名称,适用于需要连接后端服务(如Varnish缓存、PHP-FPM应用服务器)的场景。

核心功能与特性

SSL配置
  • 内置SSL证书路径:/etc/ssl/phpro,包含通配符证书star_phpro_local.pem及密钥star_phpro_local.key,支持*.phpro.local域名
  • 默认启用TLSv1.2、TLSv1.3协议,使用加密套件AES256+EECDH:AES256+EDH:!aNULL
  • 支持HTTP/2协议
配置管理
  • 提供includes目录:/etc/nginx/includes,可存放通用配置片段并通过include指令引用
  • 支持环境变量动态配置:通过${SERVER_NAME}环境变量设置服务器名称
  • 预定义代理配置:支持连接Varnish(缓存服务)、PHP-FPM(应用服务器)等后端服务
性能与安全
  • 配置client_max_body_size(默认512M或108M,可调整)
  • 优化代理缓冲区设置(proxy_buffer_size、proxy_buffers等)
  • 启用gzip压缩,支持多种文件类型(text/css、application/json等)
  • 限制PHP文件访问,仅允许前端控制器(如app.php)处理请求

使用场景

  • 开发环境中需要HTTPS支持的应用部署
  • 作为前端代理服务器,连接后端缓存服务(如Varnish)或应用服务器(如PHP-FPM)
  • 需要统一配置管理(通过includes目录)的多服务代理场景

使用方法与配置说明

Nginx配置示例
示例1:基础SSL代理配置(ssl-proxy.template)

适用于直接代理至Varnish缓存服务的场景:

nginx
server {
    listen 443 ssl http2;
    server_name ${SERVER_NAME};
    ssl_certificate     /etc/ssl/phpro/star_phpro_local.pem;
    ssl_certificate_key /etc/ssl/phpro/star_phpro_local.key;

    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers AES256+EECDH:AES256+EDH:!aNULL;

    client_max_body_size 512M;

    access_log /var/log/nginx/access.log;
    error_log /var/log/nginx/error.log;

          location / {
              proxy_pass [***]
              proxy_set_header Host ${SERVER_NAME};
              proxy_set_header X-Forwarded-Proto https;
              proxy_read_timeout    600;
              proxy_connect_timeout 600;
              proxy_redirect        off;
              proxy_set_header      X-VerifiedViaNginx yes;
              proxy_set_header      Proxy "";
              proxy_buffer_size	128k;
              proxy_buffers	4 256k;
              proxy_busy_buffers_size	256k;
          }
}
示例2:使用includes的配置

通过includes目录引用通用配置片段,简化server配置:

nginx
server {
    listen 443 ssl http2;
    server_name ${SERVER_NAME};
    ssl_certificate     /etc/ssl/phpro/star_phpro_local.pem;
    ssl_certificate_key /etc/ssl/phpro/star_phpro_local.key;

    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers AES256+EECDH:AES256+EDH:!aNULL;

    client_max_body_size 108M;

    access_log /var/log/nginx/access.log;

    include /etc/nginx/includes/${NGINX_FILE}.nginx.conf;
}
Includes目录配置内容

/etc/nginx/includes目录下的配置片段示例(如app.nginx.conf),包含应用服务器代理、静态文件处理等通用配置:

nginx
root /app/web;

location / {
    # 尝试直接提供文件,否则转发至index.php
    try_files $uri /app.php$is_args$args;
}

# 可选:禁用资产目录回退到PHP脚本(提升性能,但不显示Symfony 404页面)
# location /bundles {
#     try_files $uri =404;
# }

location ~ ^/app\.php(/|$) {
    fastcgi_pass application:9000;
    fastcgi_split_path_info ^(.+\.php)(/.*)$;
    include fastcgi_params;

    # 当使用符号链接将文档根目录链接到应用的当前版本时,应将实际应用路径传递给PHP-FPM
    # 否则PHP OPcache可能无法正确检测PHP文件的更改
    fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
    fastcgi_param DOCUMENT_ROOT $realpath_root;
    # 阻止包含前端控制器的URI访问(如[***]
    # 移除internal指令可允许此类URI
    internal;
}

# 对所有不匹配前端控制器的PHP文件返回404,防止访问不需要公开的PHP文件
location ~ \.php$ {
    return 404;
}

gzip on;
gzip_disable "msie6";

gzip_comp_level 6;
gzip_min_length 1100;
gzip_buffers 16 8k;
gzip_proxied any;
gzip_types
    text/plain
    text/css
    text/js
    text/xml
    text/javascript
    application/javascript
    application/x-javascript
    application/json
    application/xml
    application/xml+rss
    image/svg+xml;
gzip_vary on;
Docker部署示例(docker-compose.yml)

通过docker-compose部署,挂载自定义配置模板,设置环境变量并生成Nginx配置:

yaml
version: '3'

services:
  nginx:
    image: docphpro/nginx:1.18.0
    container_name: edmac-nginx-proxy
    volumes:
      # 挂载自定义Nginx配置模板至容器
      - ./sysadmin/docker/nginx/ssl-proxy.template:/etc/nginx/conf.d/ssl-proxy.template:ro
    environment:
      # 设置服务器名称(需匹配通配符证书域名,如edmac.phpro.local)
      - SERVER_NAME=edmac.phpro.local
    # 生成Nginx配置并启动服务
    command: /bin/sh -c "envsubst < /etc/nginx/conf.d/ssl-proxy.template > /etc/nginx/conf.d/default.conf && nginx -g 'daemon off;'" 
    # 链接后端服务(如Varnish缓存)
    links:
      - varnish
    ports:
      - "80:80"   # HTTP端口(可选,根据需求开放)
      - "443:443" # HTTPS端口
配置说明:
  • volumes:挂载本地Nginx配置模板至容器,模板中使用${SERVER_NAME}等环境变量
  • environment:SERVER_NAME指定代理服务器域名,需与SSL证书匹配
  • command:通过envsubst替换环境变量生成最终配置文件,并以非守护进程模式启动Nginx
  • links:链接至后端服务(如Varnish),确保Nginx可访问后端服务地址(如varnish:6081)
查看更多 nginx 相关镜像 →
nginx logo
nginx
Nginx的官方构建版本是由Nginx官方团队开发并发布的正式软件版本,具备高性能、轻量级和稳定性等核心特性,支持HTTP、HTTPS、SMTP等多种协议,可广泛应用于Web服务器部署、反向代理、负载均衡及HTTP缓存等场景,经过严格测试与优化,确保了运行的安全性和可靠性,是全球众多企业及开发者构建高效网络服务的首选官方版本。
211481B+ pulls
上次更新:未知
nginx/nginx-ingress logo
nginx/nginx-ingress
NGINX和NGINX Plus入口控制器是专为Kubernetes设计的流量管理工具,主要用于管理外部HTTP/HTTPS流量进入Kubernetes集群,支持请求路由、负载均衡、SSL终止、流量控制等功能,适用于容器化应用和微服务架构,其中NGINX Plus还提供商业支持、高级监控和增强的负载均衡能力,帮助提升集群流量管理的效率与安全性。
1121B+ pulls
上次更新:未知
nginx/nginx-prometheus-exporter logo
nginx/nginx-prometheus-exporter
NGINX Prometheus Exporter用于收集并导出NGINX与NGINX Plus的监控指标,供Prometheus采集以实现对其运行状态的监控。
5050M+ pulls
上次更新:未知
nginx/nginx-ingress-operator logo
nginx/nginx-ingress-operator
用于NGINX和NGINX Plus入口控制器的NGINX入口操作器,基于Helm图表构建。
31M+ pulls
上次更新:未知
nginx/unit logo
nginx/unit
此仓库已停用,建议用户改用Docker官方提供的镜像,具体官方镜像可通过链接[***]
6510M+ pulls
上次更新:未知
nginx/nginx-quic-qns logo
nginx/nginx-quic-qns
用于 NGINX QUIC 协议互操作性测试的 Docker 镜像,集成 QUIC 支持,简化 QUIC 实现的兼容性验证与功能测试流程。
110K+ pulls
上次更新:未知

轩辕镜像配置手册

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

登录仓库拉取

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

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

Docker Compose

Docker Compose 项目配置

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

Dev Containers

VS Code Dev Containers 配置

MacOS OrbStack

MacOS OrbStack 容器配置

宝塔面板

在宝塔面板一键配置镜像

群晖

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

运维工程师

Linux服务器

5

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

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