专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏

securecodebox/auto-discovery-pull-secret-extractor Docker 镜像 - 轩辕镜像

auto-discovery-pull-secret-extractor
securecodebox/auto-discovery-pull-secret-extractor
auto-discovery-secret-extraction容器作为initContainer,用于帮助Trivy等扫描工具访问私有Docker仓库镜像,通过自动发现并创建带ownerReference的临时密钥实现认证,扫描完成后临时密钥自动删除。
0 次下载activesecurecodebox镜像
🚀专业版镜像服务,面向生产环境设计
中文简介版本下载
🚀专业版镜像服务,面向生产环境设计

auto-discovery-secret-extraction 镜像文档

镜像概述和主要用途

auto-discovery-secret-extraction 是一个专为 Kubernetes 环境设计的 initContainer 镜像,旨在解决容器扫描工具(如 Trivy)访问私有 Docker 仓库镜像时的认证问题。它通过自动发现挂载的密钥、识别目标镜像所属私有仓库的凭证,并创建与 Pod 生命周期绑定的临时密钥,为扫描工具提供安全的认证支持。临时密钥通过 ownerReference 与 Pod 关联,确保扫描任务完成后自动清理,避免凭证长期留存风险。

核心功能和特性

  • initContainer 角色:作为 Pod 初始化阶段的前置容器运行,为后续扫描工具提供认证凭证支持。
  • 参数化配置:接收镜像 ID(用于定位目标仓库)和临时密钥名称作为命令行参数。
  • 密钥自动发现:扫描 /secrets 目录下挂载的密钥,自动识别与目标镜像仓库域匹配的认证凭证。
  • 临时密钥管理:创建包含仓库认证凭证的临时密钥,并添加 ownerReference 指向所在 Pod,实现与 Pod 生命周期绑定的自动删除。
  • 安全凭证隔离:临时密钥仅在扫描期间存在,避免长期密钥暴露,提升认证安全性。

使用场景和适用范围

适用于 Kubernetes 集群中使用容器扫描工具(如 Trivy)对私有 Docker 仓库镜像进行安全扫描的场景。尤其适合需要动态管理认证凭证、避免长期密钥留存的自动化扫描流程,确保私有仓库镜像扫描的安全性和便捷性。

详细使用方法和配置说明

本地测试环境搭建

以下步骤介绍如何在本地搭建测试环境,验证 auto-discovery-secret-extraction 容器的功能:

创建带认证的本地 Docker 仓库
  1. 生成基本认证密钥

    bash
    mkdir auth
    docker run \
      --entrypoint htpasswd \
      httpd:2 -Bbn testuser testpassword > auth/htpasswd
    
  2. 启动本地仓库容器(命令改编自 Docker 文档)

    bash
    docker run -d \
      -p "127.0.0.1:5000:5000" \
      --name registry \
      --restart=always \
      -v "$(pwd)"/auth:/auth \
      -e "REGISTRY_AUTH=htpasswd" \
      -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
      -e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd \
      registry:2
    
  3. 登录本地仓库

    bash
    docker login localhost:5000 -u testuser -p testpassword
    
配置 Kind 集群与本地仓库
  1. 创建包含本地仓库配置的 Kind 集群(命令改编自 Kind 文档)

    bash
    cat <<EOF | kind create cluster --config=-
    kind: Cluster
    apiVersion: kind.x-k8s.io/v1alpha4
    nodes:
      - role: control-plane
    containerdConfigPatches:
    - |-
      [plugins."io.containerd.grpc.v1.cri".registry.mirrors."localhost:5000"]
        endpoint = ["[***]"]
      [plugins."io.containerd.grpc.v1.cri".registry.configs."registry:5000".tls]
        insecure_skip_verify = true
    
    EOF
    
    docker network connect "kind" "registry"
    
    cat <<EOF | kubectl apply -f -
    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: local-registry-hosting
      namespace: kube-public
    data:
      localRegistryHosting.v1: |
        host: "localhost:5000"
        help: "[***]"
    EOF
    
推送镜像与创建测试 Pod
  1. 推送测试镜像到本地仓库

    bash
    docker pull ubuntu
    docker tag ubuntu localhost:5000/ubuntu
    docker push localhost:5000/ubuntu
    
  2. 创建使用本地仓库镜像的测试 Pod

    bash
    cat <<EOF | kubectl apply -f -
    apiVersion: v1
    kind: Secret
    metadata:
      name: regcred
      namespace: default
    data:
      .dockerconfigjson: ewoJImF1dGhzIjogewoJCSJsb2NhbGhvc3Q6NTAwMCI6IHsKCQkJImF1dGgiOiAiZEdWemRIVnpaWEk2ZEdWemRIQmhjM04zYjNKayIKCQl9Cgl9Cn0=
    type: kubernetes.io/dockerconfigjson
    ---
    
    apiVersion: v1
    kind: Pod 
    metadata:
      name: private-reg
      namespace: default
    spec:
      containers:
      - name: private-reg-container
        image: localhost:5000/ubuntu
        command: ["sleep"]
        args: ["999999"]
      imagePullSecrets:
      - name: regcred
    EOF
    

使用流程说明

容器运行机制
  1. 参数输入:通过命令行参数接收目标镜像 ID 和临时密钥名称。
  2. 密钥扫描:读取 /secrets 目录下挂载的密钥文件,分析密钥中包含的仓库认证信息。
  3. 仓库匹配:根据镜像 ID 解析目标私有仓库域名,从挂载密钥中匹配对应仓库的认证凭证。
  4. 临时密钥创建:生成指定名称的临时密钥,填入匹配的认证凭证,并添加 ownerReference 指向所在 Pod。
  5. 扫描与清理:扫描工具使用临时密钥访问私有仓库完成镜像扫描;Pod 扫描任务结束后,临时密钥随 Pod 生命周期自动删除。
关键配置要求
  • 密钥挂载:需将包含私有仓库认证凭证的密钥以 Volume 形式挂载至容器的 /secrets 目录。
  • 命令行参数:必须提供目标镜像 ID 和临时密钥名称作为启动参数,格式为 [镜像ID] [临时密钥名称]。
  • Kubernetes 环境:需在 Kubernetes 集群中运行,依赖 ownerReference 机制实现临时密钥自动清理。
查看更多 auto-discovery-pull-secret-extractor 相关镜像 →
rancher/pre-pull-images logo
rancher/pre-pull-images
by Rancher by SUSE
认证
暂无描述
4100K+ pulls
上次更新:7 年前
temporalio/auto-setup logo
temporalio/auto-setup
by Temporal Technologies Inc
认证
工作流即代码(Workflow as Code,TM)是一种将应用构建与运维流程通过代码化方式定义、管理和执行的方法,旨在提升应用的可靠性、可恢复性与持续运行能力,支持开发与运维团队高效协作,实现从构建到运维的全生命周期自动化,确保应用在复杂场景及潜在故障下仍能稳定运行,从而帮助用户构建并运维具备强大韧性的应用系统。
610M+ pulls
上次更新:12 天前
docker/ecs-secrets-sidecar logo
docker/ecs-secrets-sidecar
by Docker, Inc.
认证
Docker Compose“Cloud Integrations”镜像原用于ECS和ACI集成,2023年11月已退役,目前主要优先处理关键安全修复,ECS用户可考虑使用compose-ecs。
110M+ pulls
上次更新:2 年前
autopas/autopas-build-gcc logo
autopas/autopas-build-gcc
by autopas
提供多种用于AutoPas库的Dockerfile,按构建任务分类(如不同编译器、代码覆盖率、文档生成等),支持无需依赖构建和测试。
110K+ pulls
上次更新:1 个月前
autopas/autopas-build-clang logo
autopas/autopas-build-clang
by autopas
提供多种Dockerfile,按任务分类用于构建AutoPas库,支持不同编译器(clang、gcc)、代码覆盖率、CUDA、文档生成等需求,无需安装依赖即可使用,适用于开发和测试环境。
110K+ pulls
上次更新:1 个月前
bitnami/sealed-secrets-controller logo
bitnami/sealed-secrets-controller
by VMware
认证
Bitnami Sealed Secrets容器镜像,用于在Kubernetes环境中加密Secrets,使其可安全存储于版本控制系统并在集群内解密使用,提供便捷部署与安全保障。
111B+ pulls
上次更新:24 天前

轩辕镜像配置手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

登录仓库拉取

通过 Docker 登录认证访问私有仓库

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

Docker Compose

Docker Compose 项目配置

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

宝塔面板

在宝塔面板一键配置镜像

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

极空间

极空间 NAS 系统配置服务

爱快路由

爱快 iKuai 路由系统配置

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

专属域名拉取

无需登录使用专属域名

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像支持哪些镜像仓库?

专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

用户好评

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

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
securecodebox/auto-discovery-pull-secret-extractor
官方博客Docker 镜像使用技巧与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
提交工单
免费获取在线技术支持请 提交工单,官方QQ群:13763429 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
免费获取在线技术支持请提交工单,官方QQ群: 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.
轩辕镜像 官方专业版 Logo
轩辕镜像轩辕镜像官方专业版
首页个人中心搜索镜像
交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 13763429