
crunchgeek/nginx-pagespeed本Docker镜像基于Debian Stretch Linux发行版构建,目标是提供集成多种增强模块的最新Nginx Web服务器。通过整合Google PageSpeed优化、GeoIP地理位置解析、虚拟主机流量监控(VTS)、响应头自定义、内容替换过滤及JSON日志等功能,满足高性能Web服务部署与运维需求。
集成PageSpeed网站优化工具,可自动分析并优化网站资源以遵循Web最佳实践。启用后可通过以下地址访问管理状态页:
http://localhost:8080/pagespeed_admin/集成VTS模块,提供虚拟主机流量监控功能,可通过以下地址访问状态页:
http://localhost:8080/status/集成GeoIP数据库,支持将远程IP地址解析为地理位置信息。
重要提示:受数据隐私***影响,MaxMind已调整免费GeoLite2数据库的访问方式。由于无法通过公共URL直接获取数据库文件,用户需手动下载数据库文件。
通过more_set_headers模块支持设置更多HTTP响应头,特别适用于多集群环境下的头信息自定义。
集成subs_filter模块,支持对响应体进行正则表达式或固定字符串替换,实现动态内容修改。
容器将Web服务器访问日志以JSON格式输出至/stdout,便于通过Fluentd等第三方工具进行日志解析与分析。
通过环境变量控制镜像功能开关与参数,主要配置项如下:
| 环境变量 | 描述 | 默认值 | 可选值 |
|---|---|---|---|
MAKE_J | 编译并行任务数 | - | 正整数 |
NGINX_VERSION | Nginx版本 | 1.13.3 | 具体版本号 |
PAGESPEED_VERSION | PageSpeed模块版本 | 1.12.34.2 | 具体版本号 |
LIBPNG_VERSION | libpng库版本 | 1.6.29 | 具体版本号 |
NGINX_INCLUDE_PATH | 额外配置文件路径 | off | 配置文件路径 |
NGINX_DEFAULT_SERVER | 启用默认健康检查主机 | on | on|off |
NGINX_GEOIP | 启用GeoIP及FastCGI变量 | off | on|off |
NGINX_PAGESPEED | 启用PageSpeed优化 | off | on|off |
NGINX_PAGESPEED_IMG | 启用图片优化 | off | on|off |
NGINX_PAGESPEED_JS | 启用JavaScript优化 | off | on|off |
NGINX_PAGESPEED_CSS | 启用样式表优化 | off | on|off |
NGINX_PAGESPEED_STORAGE | PageSpeed缓存存储类型 | files | files|redis|memcached |
NGINX_PAGESPEED_REDIS | Redis缓存地址:端口 | none | 如redis.host:6379 |
NGINX_PAGESPEED_MEMCACHED | Memcached缓存地址:端口 | none | 如memcached.host:*** |
yamlversion: '3' services: nginx: image: [镜像名称] ports: - "8080:8080" environment: - NGINX_PAGESPEED=on - NGINX_PAGESPEED_IMG=on - NGINX_PAGESPEED_JS=on - NGINX_PAGESPEED_CSS=on - NGINX_PAGESPEED_STORAGE=redis - NGINX_PAGESPEED_REDIS=redis:6379 - NGINX_GEOIP=on - NGINX_DEFAULT_SERVER=on volumes: - ./geoip:/etc/nginx/geoip # 挂载手动下载的GeoIP数据库 - ./nginx/conf.d:/etc/nginx/conf.d # 挂载自定义Nginx配置 depends_on: - redis redis: image: redis:alpine
docker logs直接查看或集成至Fluentd等日志系统NGINX_INCLUDE_PATH指定额外配置文件路径,实现自定义Nginx配置扩展manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务