
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Krill 是一个资源公钥基础设施(Resource Public Key Infrastructure, RPKI)守护进程,具备证书颁发机构(Certificate Authority, CA)和发布服务器功能,使用 Rust 语言编写。如果您有任何反馈,欢迎通过 https://github.com/NLnetLabs/krill/issues/new%E3%80%81%E5%9C%A8 RPKI 邮件列表 或 *** 服务器 留言。您可以通过 Read the Docs 上的文档了解更多关于 Krill 和 RPKI 技术的信息。
Krill 官方 Docker 镜像可从 Docker Hub 获取:
bash# 拉取最新镜像 docker pull nlnetlabs/krill:latest # 运行容器(基本配置) docker run -d \ --name krill \ -p 3000:3000 \ -v /path/to/krill/data:/data \ nlnetlabs/krill:latest
注意:
/path/to/krill/data需替换为本地数据目录,用于持久化存储配置和证书数据。
在 Debian 或 Ubuntu 系统上,可通过官方软件仓库安装:
添加软件仓库
将对应系统的仓库配置添加到 /etc/apt/sources.list 或 /etc/apt/sources.list.d/ 目录:
bash# Debian stretch deb [arch=amd64] https://packages.nlnetlabs.nl/linux/debian/ stretch main # Debian buster deb [arch=amd64] https://packages.nlnetlabs.nl/linux/debian/ buster main # Ubuntu xenial deb [arch=amd64] https://packages.nlnetlabs.nl/linux/ubuntu/ xenial main # Ubuntu bionic deb [arch=amd64] https://packages.nlnetlabs.nl/linux/ubuntu/ bionic main # Ubuntu focal deb [arch=amd64] https://packages.nlnetlabs.nl/linux/ubuntu/ focal main
安装 Krill
bash# 更新仓库并安装依赖 sudo apt update && sudo apt-get install -y gnupg2 wget -qO- https://packages.nlnetlabs.nl/aptkey.asc | sudo apt-key add - sudo apt update # 安装并启动 Krill sudo apt install krill sudo systemctl enable --now krill
安装完成后:
/var/lib/krill//etc/krill.conf(已自动生成认证令牌)https://localhost:3000(使用自签名 TLS 证书)准备环境
安装 Rust 环境:
bashcurl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh source ~/.cargo/env # 将 Cargo 添加到当前环境变量
安装依赖:
bashsudo apt install build-essential libssl-dev openssl pkg-config curl
安装 Krill
bash# 安装 Krill cargo install --locked krill # 创建数据目录并生成配置文件 mkdir ~/data krillc config simple --token correct-horse-battery-staple --data ~/data/ > ~/data/krill.conf # 启动 Krill krill --config ~/data/krill.conf
基本配置生成
使用 krillc 生成简单配置文件:
bashkrillc config simple \ --token <your-secret-token> \ # 替换为强密码(建议参考 XKCD 936 标准) --data /path/to/data/ \ # 数据目录路径 > /path/to/data/krill.conf # 输出配置文件
配置文件主要参数
完整配置示例可参考 https://github.com/NLnetLabs/krill/blob/master/defaults/krill.conf%EF%BC%8C%E6%A0%B8%E5%BF%83%E5%8F%82%E6%95%B0%E5%8C%85%E6%8B%AC%EF%BC%9A
data_dir:数据存储目录路径token:API 和 CLI 认证令牌server.listen:监听地址(默认 127.0.0.1:3000)server.tls:TLS 配置(证书和密钥路径)手动启动脚本
bash#!/bin/bash KRILL="krill" DATA_DIR="/path/to/data" # 替换为实际数据目录 KRILL_PID="$DATA_DIR/krill.pid" CONF="$DATA_DIR/krill.conf" SCRIPT_OUT="$DATA_DIR/krill.log" nohup $KRILL -c $CONF >$SCRIPT_OUT 2>&1 & echo $! > $KRILL_PID
停止脚本
bash#!/bin/bash DATA_DIR="/path/to/data" # 替换为实际数据目录 KRILL_PID="$DATA_DIR/krill.pid" kill `cat $KRILL_PID`
HTTPS 与反向代理
Krill 默认使用自签名 TLS 证书(位于数据目录的 ssl/ 子目录)。建议生产环境中配置反向代理(如 Nginx 或 Apache):
Nginx 代理示例:
nginxserver { listen 443 ssl; server_name krill.example.com; ssl_certificate /path/to/ca-cert.pem; ssl_certificate_key /path/to/ca-key.pem; location / { proxy_pass https://127.0.0.1:3000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } }
访问控制
server.listen 配置可修改监听地址(如 0.0.0.0:3000 允许所有接口访问)token 复杂度足够,避免未授权访问Web 用户界面(UI)
启动后通过浏览器访问 https://localhost:3000,接受自签名证书警告后即可进入 UI,使用配置文件中的 token 登录。
命令行界面(CLI)
使用 krillc 工具与 Krill 交互:
bash# 查看 CA 列表 krillc ca list --server https://localhost:3000 --token <your-token> # 创建新 CA krillc ca create --name my-ca --server https://localhost:3000 --token <your-token>
API 接口
API 文档可通过访问 https://localhost:3000/api/v1/docs 获取,支持 RESTful 风格接口,需在请求头中包含认证令牌:
httpAuthorization: Bearer <your-token>
Docker 镜像更新:
bashdocker pull nlnetlabs/krill:latest docker stop krill && docker rm krill # 重新运行容器(使用原数据卷)
Cargo 安装更新:
bashrustup update cargo install --locked --force krill
Debian/Ubuntu 包更新:
bashsudo apt update && sudo apt upgrade krill
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务