
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Dockerfile链接获取帮助的渠道: https://github.com/apache/incubator-pagespeed-mod/wiki%EF%BC%8C%E5%9C%A8%E9%82%AE%E4%BB%B6%E5%88%97%E8%A1%A8%E6%8F%90%E9%97%AE
Docker镜像仓库: https://hub.docker.com/r/pagespeed/nginx-pagespeed
Git Dockerfile仓库: https://github.com/We-Amp/ngx-pagespeed-alpine
提交问题的地址: https://github.com/We-Amp/ngx-pagespeed-alpine/issues
维护该Docker镜像的人员: Nico Berlee
支持的Docker版本: https://github.com/docker/docker-ce/releases/latest%EF%BC%88%E5%B0%BD%E5%8A%9B%E6%94%AF%E6%8C%81%E4%BD%8E%E8%87%B31.12%E7%89%88%E6%9C%AC%EF%BC%89
PageSpeed模块(https://github.com/apache/incubator-pagespeed-mod 和 https://github.com/apache/incubator-pagespeed-ngx%EF%BC%89%E6%98%AF%E5%BC%80%E6%BA%90%E7%9A%84Web%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%A8%A1%E5%9D%97%EF%BC%8C%E5%8F%AF%E8%87%AA%E5%8A%A8%E4%BC%98%E5%8C%96%E4%BD%A0%E7%9A%84%E7%BD%91%E7%AB%99%E3%80%82
ngx_pagespeed通过自动将Web性能最佳实践应用于页面及相关资源(CSS、JavaScript、图片),无需修改现有内容或工作流程,即可加快网站速度并减少页面加载时间。其功能包括:
若想查看ngx_pagespeed的实际效果及各优化项的示例页面,请访问演示站点。
!logo
Nginx(发音为"engine-x")是一款开源的反向代理服务器,支持HTTP、HTTPS、SMTP、POP3和IMAP协议,同时也是负载均衡器、HTTP缓存和Web服务器(源服务器)。Nginx项目最初以高并发、高性能和低内存占用为核心目标。
***.org/wiki/Nginx
nginx-pagespeed镜像将Nginx和PageSpeed的优势整合到一个轻量的Alpine Docker镜像中。它旨在与普通的https://hub.docker.com/_/nginx/%E9%95%9C%E5%83%8F100%25%E5%85%BC%E5%AE%B9%EF%BC%8C%E6%84%8F%E5%91%B3%E7%9D%80nginx-pagespeed%E5%8F%AF%E4%BB%A5%E4%BD%9C%E4%B8%BA%E4%BB%BB%E4%BD%95%E8%BF%90%E8%A1%8C%60nginx:alpine%60%E7%9A%84%E5%AE%B9%E5%99%A8%E7%9A%84%E5%AE%89%E5%85%A8%E6%9B%BF%E4%BB%A3%E6%96%B9%E6%A1%88%E3%80%82
nginx-pagespeed让你无需修改现有内容即可轻松开始优化网站,减少页面加载时间。
console$ docker run --name pagespeed-nginx -v /some/content:/usr/share/nginx/html:ro -d pagespeed/nginx-pagespeed
或者,你可以使用简单的Dockerfile生成包含必要内容的新镜像(这比上述绑定挂载的方式更简洁):
dockerfileFROM pagespeed/nginx-pagespeed COPY static-html-directory /usr/share/nginx/html
将此文件与你的内容目录("static-html-directory")放在同一目录下,运行docker build -t some-content-ngxpagespeed .,然后启动容器:
console$ docker run --name my-nginx-pagespeed -d some-content-ngxpagespeed
console$ docker run --name my-nginx-pagespeed -d -p 8080:80 some-content-ngxpagespeed
之后你可以在浏览器中访问http://localhost:8080或http://host-ip:8080。
console$ docker run --name my-custom-nginx-pagespeed -v /host/path/nginx.conf:/etc/nginx/nginx.conf:ro -d pagespeed/nginx-pagespeed
关于Nginx配置文件的语法,请参阅官方文档(特别是入门指南)。对于PageSpeed相关的Nginx配置语法,请参阅入门指南或所有PageSpeed过滤器的完整概述。
若你希望调整默认配置,可以通过以下方式从运行中的nginx-pagespeed容器复制配置文件:
console$ docker run --name tmp-ngxpagespeed-container -d pagespeed/nginx-pagespeed $ docker cp tmp-ngxpagespeed-container:/etc/nginx/nginx.conf /host/path/nginx.conf $ docker rm -f tmp-ngxpagespeed-container
这也可以通过简单的Dockerfile(位于/host/path/目录下)更简洁地实现:
dockerfileFROM pagespeed/nginx-pagespeed COPY nginx.conf /etc/nginx/nginx.conf
如果你在Dockerfile中添加了自定义CMD,请确保在CMD中包含-g daemon off;,以便Nginx保持在前台运行,让Docker能够正确跟踪进程(否则你的容器会在启动后立即停止)!
然后构建镜像:docker build -t custom-ngxpagespeed .,并按以下方式运行:
console$ docker run --name my-custom-ngxpagespeed-container -d custom-ngxpagespeed
默认情况下,Nginx在大多数配置块中不支持环境变量。但如果需要在Nginx启动前动态生成配置,可以使用envsubst作为变通方案。
以下是使用docker-compose.yml的示例:
yamlweb: image: pagespeed/nginx-pagespeed volumes: - ./mysite.template:/etc/nginx/conf.d/mysite.template ports: - "8080:80" environment: - NGINX_HOST=foobar.com - NGINX_PORT=80 command: /bin/bash -c "envsubst < /etc/nginx/conf.d/mysite.template > /etc/nginx/conf.d/default.conf && nginx -g 'daemon off;'"
mysite.template文件中可以包含如下变量引用:
listen ${NGINX_PORT};
pagespeed/nginx-pagespeed镜像有多种版本,每种版本针对特定使用场景设计。
pagespeed/nginx-pagespeed:<version>这是默认镜像。如果你不确定自己的需求,可能需要使用此版本。它既可以作为临时容器(挂载源代码并启动容器以运行应用),也可以作为构建其他镜像的基础。
nginx:edge该镜像包含Alpine Linux项目中最新的系统包,意味着使用最新的LibreSSL和musl-libc,但缺点是系统包的测试程度较低。
docker build -t <image_tag> <dockerfile_path> . $ docker build -t ngxpagespeed-alpine38-ngxstable stable/3.8/nginx-stable 更多选项请参考这里。
$ docker run -d -p 80:80 <image_tag>
更多选项请参考这里。
3 GB的可用磁盘空间
Apache PageSpeed是Apache软件基金会(ASF)旗下处于孵化阶段的项目,由Apache孵化器赞助。所有新接受的项目都需要经过孵化阶段,直到进一步审查表明其基础设施、通信和决策流程已稳定,达到与其他成功ASF项目一致的水平。虽然孵化状态不一定反映代码的完整性或稳定性,但它确实表明该项目尚未获得ASF的完全认可。
查看https://github.com/We-Amp/ngx-pagespeed-alpine/blob/master/LICENSE 查看Nginx许可信息
与所有Docker镜像一样,这些镜像可能还包含其他软件,这些软件可能受其他许可协议约束(例如基础发行版中的Bash等,以及包含的主要软件的任何直接或间接依赖项)。
一些可自动检测到的额外许可信息可能位于https://github.com/docker-library/repo-info/tree/master/repos/nginx%E4%B8%AD%E3%80%82
对于任何预构建镜像的使用,镜像用户有责任确保对该镜像的任何使用都符合其中包含的所有软件的相关许可协议。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。





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