
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
该容器镜像封装了Caddy HTTP服务器。它基于https://hub.docker.com/_/scratch/构建,执行单个静态链接的二进制文件,不包含任何https://github.com/mholt/caddy/wiki/Extending-Caddy。它包含一个小型的index.html着陆页,无需配置即可在任何Docker主机上演示,例如执行docker run -d -P joshix/caddy。
默认情况下,该Caddy监听容器暴露的TCP端口8080,并尝试从容器的/var/www/html/路径下提供文件。
内容可以通过绑定主机卷到该路径,或者在基于此镜像构建新镜像时使用COPY/ADD命令添加文件。通过相同机制添加Caddyfile,可以按照Caddy文档配置web服务器和站点。
./rootfs/下的文件层次结构被复制到容器的空/目录,形成以下布局:
/bin/caddy - 服务器可执行文件/etc/ssl/certs/ca-certificates.crt - 证书颁发机构证书/var/www/html/ - Caddy工作目录和HTTP命名空间根目录/var/www/html/Caddyfile - 默认配置/var/www/html/index.html - 默认着陆页至少有两种方式为Caddy提供内容和配置:
sh$ ls /home/j/site index.html img/ [...] $ docker run -d -p 8080:8080 -v /home/j/site:/var/www/html:ro joshix/caddy
或者,
sh$ cd /home/j/site.build $ ls Dockerfile index.html img/logo.png [...] $ cat Dockerfile FROM joshix/caddy COPY . /var/www/html $ docker build -t "com.mysite-caddy" . $ docker run -d -p 8080:8080 com.mysite-caddy
要配置Caddy,在服务器工作目录添加Caddyfile:
sh$ ls /home/j/site Caddyfile index.md img/ [...] $ cat /home/j/site/Caddyfile 0.0.0.0:8080 ext .html .htm .md markdown / gzip [...] $ docker run -d -p 8080:8080 -v /home/j/site:/var/www/html:ro joshix/caddy
要提供HTTPS服务,添加证书和密钥文件,并在Caddyfile中指定它们:
sh$ ls /home/j/site html/ tls/ $ ls /home/j/site/html Caddyfile index.html img/ [...] $ ls /home/j/site/tls site.crt site.key $ cat /home/j/site/html/Caddyfile 0.0.0.0:8080 { redir https://site.com # 将任何HTTP请求重定向到HTTPS } 0.0.0.0:443 { tls ../tls/site.crt ../tls/site.key } [...] $ docker run -d -p 80:8080 -p 443:443 -v /home/j/site:/var/www:ro joshix/caddy
Caddy可以自动获取和续期TLS密钥和证书,使用Let's Encrypt项目的ACME协议来保护连接。
需要Caddyfile
创建一个Caddyfile,至少指定解析到Docker主机的域名(该主机将安排此类流量由运行的caddybox容器处理),以及用于注册Let's Encrypt的电子邮件地址。
sh$ ls /home/j/site Caddyfile index.html $ cat /home/j/site/Caddyfile lecaddybox.wood-racing.com tls j@joshix.com $ docker run --name com.wood-racing.lecaddybox -d \ -p 80:80 -p 443:443 \ -v /home/j/site:/var/www/html:ro \ -v /home/j/dotcaddy:/.caddy:rw \ joshix/caddy -agree
持久化
在Let's Encrypt交换中生成的证书、密钥和配置被写入容器/.caddy/letsencrypt/路径下的文件。上面的示例将该路径安排为Docker卷,用主机目录/home/j/dotcaddy/备份容器的/.caddy/。
或者,可以使用docker cp命令将Let's Encrypt工件从容器文件系统复制出来,例如:
shdocker cp com.wood-racing.lecaddybox:/.caddy /backup/dotcaddy
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。




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