
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
NGINX Open Source 是一款 Web 服务器,同时可作为反向代理、负载均衡器和 HTTP 缓存使用。因其能提供更快的内容传输能力,适用于高需求网站。
[NGINX Open Source 概述]
商标说明:本软件包由 Bitnami 打包,提及的商标分属各自公司所有,使用不代表关联或背书。
consoledocker run --name nginx docker.xuanyuan.run/bitnami/nginx:latest
这是由 Bitnami 构建和维护的强化、最小化 CVE 镜像。Bitnami Secure Images(BSI)基于云优化、安全强化的企业级操作系统 [Photon Linux] 。选择 BSI 镜像的理由:
通过 Helm Charts 部署 Bitnami 应用是在 Kubernetes 上快速启动的最简单方式。详见 [Bitnami NGINX Open Source Chart GitHub 仓库] 。
非 root 容器增加了一层安全防护,通常推荐用于生产环境。但由于以非 root 用户运行,特权操作通常受限。详见 [相关文档] 。
了解 Bitnami 标签策略(滚动标签与不可变标签的区别),可参考 [文档] 。标签对应关系可查看分支文件夹中的 tags-info.yaml 文件(如 bitnami/ASSET/BRANCH/DISTRO/tags-info.yaml)。
推荐从 [Docker Hub Registry] 拉取预构建镜像:
consoledocker pull docker.xuanyuan.run/bitnami/nginx:latest # 最新版本
如需特定版本,拉取带版本标签的镜像(查看 [可用版本列表] ):
consoledocker pull docker.xuanyuan.run/bitnami/nginx:[TAG] # 替换 [TAG] 为具体版本
克隆仓库后构建:
consolegit clone [] bitnami/APP/VERSION/OPERATING-SYSTEM # 替换占位符为实际值 docker build -t bitnami/APP:latest .
镜像暴露 /app 目录作为卷,挂载至此的内容会通过默认服务器块提供服务:
consoledocker run -v /本地路径/app:/app docker.xuanyuan.run/bitnami/nginx:latest
或修改 docker-compose.yml:
yamlservices: nginx: ... volumes: - /本地路径/app:/app # 本地静态文件目录映射到容器内/app ...
让 Docker 将容器的 8080/8443 端口映射到主机随机端口:
consoledocker run --name nginx -P docker.xuanyuan.run/bitnami/nginx:latest
用 docker port 查看映射的主机端口:
consoledocker port nginx # 示例输出:8080/tcp -> 0.0.0.0:32769
手动指定主机端口(如主机 9000 端口映射到容器 8080 端口):
consoledocker run -p 9000:8080 docker.xuanyuan.run/bitnami/nginx:latest
访问 `[] 即可打开网站。
默认 nginx.conf 会包含 /opt/bitnami/nginx/conf/server_blocks/ 目录下的配置文件,按以下步骤添加:
步骤 1:创建服务器块配置文件
例如 my_server_block.conf:
CODE_TOKEN_9
步骤 2:挂载配置文件
CODE_TOKEN_10
或修改 docker-compose.yml:
CODE_TOKEN_11
默认 nginx.conf 支持按 NGINX 上下文组织配置文件,挂载到对应目录即可:
/opt/bitnami/nginx/conf/context.d/main/:main 上下文(如模块加载、worker 进程)/opt/bitnami/nginx/conf/context.d/events/:events 上下文(如 worker_connections)/opt/bitnami/nginx/conf/context.d/http/:http 上下文(等效于 server_blocks)示例:启用 WebDAV 模块
创建 webdav.conf:
CODE_TOKEN_12
挂载到 main 上下文目录:
CODE_TOKEN_13
如需使用 [NGINX Stream Core Module] ,需将流服务器块配置文件挂载到 /opt/bitnami/nginx/conf/stream_server_blocks/,并设置环境变量 NGINX_ENABLE_STREAM=yes。
步骤 1:创建流服务器块配置
例如 my_stream_server_block.conf:
CODE_TOKEN_14
步骤 2:运行容器
CODE_TOKEN_15
步骤 1:准备证书文件
本地创建 certs 目录,将证书重命名为 tls.crt 和 tls.key:
CODE_TOKEN_16
步骤 2:创建 SSL 服务器块配置
例如 my_ssl_server_block.conf:
CODE_TOKEN_17
步骤 3:运行容器挂载证书
CODE_TOKEN_18
默认重定向为相对路径,可通过环境变量调整:
NGINX_ENABLE_ABSOLUTE_REDIRECT=yes:启用绝对路径重定向(需注意端口)NGINX_ENABLE_PORT_IN_REDIRECT=yes:重定向 URL 包含容器监听端口(需容器与主机端口一致)示例:启用绝对重定向并包含端口
CODE_TOKEN_19
通过挂载自定义 nginx.conf 覆盖默认配置:
CODE_TOKEN_20
Bitnami 安全镜像支持 FIPS 模式,通过环境变量配置:
OPENSSL_FIPS=yes(默认):启用 FIPS 模式OPENSSL_FIPS=no:禁用 FIPS 模式通过 Docker 链接功能,NGINX 可反向代理到其他容器。示例服务器块配置(保存为 proxy_server_block.conf):
CODE_TOKEN_21
挂载配置文件并运行容器即可。
容器日志输出到 stdout,通过以下命令查看:
CODE_TOKEN_22
可通过 --log-driver 选项配置 [日志驱动] 。
若通过环境变量、自定义配置文件等方式无法满足需求,可基于 bitnami/nginx 构建自定义镜像。示例 Dockerfile:
CODE_TOKEN_23
需编译 NGINX 并复制模块文件到基础镜像。示例:添加 Perl 模块(ngx_http_perl_module)的 Dockerfile:
DockerfileARG NGINX_VERSION=1.25.0 ARG BITNAMI_NGINX_TAG=${NGINX_VERSION}-debian-12-r0 # 构建阶段:编译 Perl 模块 FROM docker.xuanyuan.run/bitnami/nginx:${BITNAMI_NGINX_TAG} AS builder USER root ARG NGINX_VERSION RUN install_packages dirmngr gpg curl build-essential libpcre3-dev zlib1g-dev libperl-dev RUN gpg --keyserver pgp.mit.edu --recv-key 520A9993A1C052F8 RUN cd /tmp && \ curl -O []}.tar.gz && \ curl -O []}.tar.gz.asc && \ gpg --verify nginx-${NGINX_VERSION}.tar.gz.asc nginx-${NGINX_VERSION}.tar.gz && \ tar xzf nginx-${NGINX_VERSION}.tar.gz RUN cd /tmp/nginx-${NGINX_VERSION} && \ ./configure --prefix=/opt/bitnami/nginx --with-compat --with-http_perl_module=dynamic && \ make && make install # 最终镜像:复制模块并启用 FROM docker.xuanyuan.run/bitnami/nginx:${BITNAMI_NGINX_TAG} USER root RUN install_packages libperl-dev COPY --from=builder /opt/bitnami/nginx/modules/ngx_http_perl_module.so /opt/bitnami/nginx/modules/ RUN echo "load_module modules/ngx_http_perl_module.so;" | cat - /opt/bitnami/nginx/conf/nginx.conf > /tmp/nginx.conf && \ cp /tmp/nginx.conf /opt/bitnami/nginx/conf/nginx.conf USER 1001
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务
以下是 bitnami/nginx 相关的常用 Docker 镜像,适用于 反向代理、负载均衡、静态资源服务 等不同场景: