如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
docker-tern是Philips Software提供的Docker镜像,内置tern工具,用于提取Docker镜像的物料清单(BOM)。该镜像支持多种BOM导出格式,提供镜像签名验证和SLSA-provenance验证机制,并包含版本追踪文件,适用于Docker镜像成分分析、安全审计和合规检查场景。
当前可用版本结构:
. ├── 2 │ ├── scancode │ └── vanilla ├── latest │ └── tern └── local └── tern
镜像托管于Docker Hub:https://hub.docker.com/r/philipssoftware/tern/
由于tern依赖Docker,需以--privileged模式运行容器,并挂载主机的docker.sock:
bashdocker run --rm -v /var/run/docker.sock:/var/run/docker.sock docker.xuanyuan.run/philipssoftware/tern --version
基本示例
bash# 创建输出目录 mkdir my_dir # 提取Debian Buster镜像的BOM并导出为JSON格式 docker run --rm -v /var/run/docker.sock:/var/run/docker.sock docker.xuanyuan.run/philipssoftware/tern report -f json -i debian:buster > debian_buster.json
上述命令将生成包含Debian Buster官方镜像BOM信息的debian_buster.json文件。更多导出格式可参考https://github.com/vmware/tern。
镜像签名验证
使用Cosign工具验证镜像签名:
bashcosign verify --key cosign.pub philipssoftware/tern | jq .
SLSA-provenance验证
验证镜像的SLSA-provenance文件:
bash# 获取镜像的RepoDigest repodigest=$(docker inspect philipssoftware/tern | jq -r .[0].RepoDigests[0]) # 验证provenance并解析内容 cosign verify-attestation --key cosign.pub $repodigest | jq -r '.payload' | base64 -d | jq .
镜像包含两个版本追踪文件:
REPO文件
记录镜像构建的代码仓库及具体commit-sha:
bashdocker run docker.xuanyuan.run/philipssoftware/tern:latest cat REPO # 示例输出:https://github.com/philips-software/docker-tern/tree/14ab374e0812ba03e32e5f2c81c7c9dfb8ef7958
TAGS文件
记录镜像创建时的关联标签:
bashdocker run docker.xuanyuan.run/philipssoftware/tern cat TAGS # 示例输出:tern:2 tern:latest
可使用TAGS文件中的标签进行生产环境版本固定,建议选择最后一个最具体的标签。
除tern工具外,镜像还包含:
REPO:构建来源仓库及commit信息TAGS:关联标签列表为在容器环境中快速获取必要工具(如tern),避免重复安装,提高开发和审计效率。
如有问题,请在https://github.com/philips-software/docker-tern/issues提交。
MIT许可证,详见LICENSE文件
本模块是Philips Forest的一部分,相关问题可在Slack的docker-images频道与forestkeepers交流。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务