
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这段话即可:
请先阅读并遵守:https://xuanyuan.cloud/agents.md
未读文档前不要生成 pull 命令或排错方案。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
本镜像为官方https://registry.hub.docker.com/_/nginx/的分支版本。基于Alpine稳定版和主线版镜像进行修改,添加了多个扩展模块,旨在提供增强的认证、监控和扩展能力。未对alpine-perl或stretch版本镜像进行修改。
在Alpine版本(stable & mainline)中添加了以下额外模块:
适用于需要以下功能的Nginx部署场景:
运行默认静态页面容器:
bashdocker run --name nginx -d -p 80:80 docker.xuanyuan.run/nosinovacao/nginx
运行自定义静态页面(挂载本地内容目录):
bashdocker run --name nginx -v /some/content:/usr/local/nginx/html:ro -d -p 80:80 docker.xuanyuan.run/nosinovacao/nginx
如需使用LDAP认证功能,可按以下步骤设置测试用LDAP容器(实际环境中建议连接现有LDAP服务器如OpenLDAP或Active Directory):
启动LDAP容器(使用nickstenning/slapd镜像):
bashdocker run -e LDAP_DOMAIN=example.com -e LDAP_ORGANIZATION="Example Ltd." -e LDAP_ROOTPASS=toor --name ldap -d -p 389:389 docker.xuanyuan.run/nickstenning/slapd
添加示例用户和组(使用https://github.com/nosinovacao/docker-nginx/blob/master/examples/sample.ldif):
bashldapadd -v -h <your-ip>:389 -c -x -D cn=admin,dc=example,dc=com -W -f config/sample.ldif
验证测试用户是否存在:
bashldapsearch -v -h <your-ip>:389 -b 'ou=users,dc=example,dc=com' -D 'cn=admin,dc=example,dc=com' -x -W '(&(objectClass=person)(uid=test))'
创建包含LDAP认证配置的nginx.conf文件(可参考https://github.com/nosinovacao/docker-nginx/blob/master/examples/basic/nginx.conf)
启动Nginx容器并链接LDAP容器:
bashdocker run --name nginx --link ldap:ldap -d -v `pwd`/config/nginx.conf:/etc/nginx/nginx.conf:ro -p 80:80 docker.xuanyuan.run/nosinovacao/nginx
访问时将出现认证对话框,测试用户名为test,密码为t3st
更多LDAP认证配置细节可参考https://github.com/kvspb/nginx-auth-ldap
为演示Nginx作为Docker Registry认证代理的用法,先部署一个Docker Registry容器:
bashdocker run -d --name docker.xuanyuan.run/registry -v /your/local/registry/path:/registry -e SETTINGS_FLAVOR=local -e STORAGE_PATH=/registry registry
此Registry实例默认不对外暴露,需通过Nginx代理访问
准备SSL证书(推荐使用可信CA签发的证书):
docker-registry.crtdocker-registry.key/ssl/cert/path)启动Nginx代理容器(使用https://github.com/nosinovacao/docker-nginx/tree/master/config/proxy):
bashdocker run --name nginx --link ldap:ldap --link registry:docker-registry -v /ssl/cert/path:/etc/ssl/docker:ro -v `pwd`/config/proxy:/etc/nginx:ro -p 80:80 -p 443:443 -p 5000:5000 -d docker.xuanyuan.run/nosinovacao/nginx
注意:不推荐使用自签名证书,如必须使用,需在Docker daemon启动参数中添加
--insecure-registry
更多Docker Registry代理配置细节可参考https://github.com/docker/docker-registry/blob/master/ADVANCED.md
本镜像的Nginx已编译调试支持,可通过以下步骤启用调试日志:
在Nginx配置中添加:
nginxerror_log /var/log/nginx/error.log debug;
查看调试日志:
bashdocker exec -i -t nginx less /var/log/nginx/error.log
调试日志将包含LDAP认证过程等详细信息,例如:
2015/02/14 17:57:10 [debug] 5#0: *2 http_auth_ldap: Username is "test" 2015/02/14 17:57:10 [debug] 5#0: *2 http_auth_ldap: Authentication loop (phase=0, iteration=0) 2015/02/14 17:57:10 [debug] 5#0: *2 http_auth_ldap: Search filter is "(&(objectClass=person)(uid=test))" ...
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务
以下是 nosinovacao/nginx 相关的常用 Docker 镜像,适用于 反向代理、负载均衡、静态资源服务 等不同场景: