docker/jwkstuf本Docker镜像用于在TUF(The Update Framework,软件更新框架)中管理OIDC(OpenID Connect,开放ID连接)提供商的公钥账本。TUF是一种保障软件更新安全的框架,而OIDC是基于OAuth 2.0的身份验证协议。该镜像通过集成TUF规范,提供OIDC提供商公钥的全生命周期管理,确保公钥信息的安全存储、分发和更新,解决分布式系统中OIDC公钥同步不一致及安全风险问题。
bashdocker run -d \ --name oidc-tuf-ledger \ -v /path/to/local/tuf-repo:/tuf/repo \ # 挂载TUF仓库目录 -e TUF_REPO_PATH=/tuf/repo \ # TUF仓库路径(容器内) -e LOG_LEVEL=info \ # 日志级别(debug/info/warn/error) -e SYNC_INTERVAL=3600 \ # 公钥同步间隔(秒,默认3600) -p 8080:8080 \ # 暴露健康检查和API端口 oidc-tuf-ledger-manager:latest
| 环境变量 | 描述 | 默认值 | 必须 |
|---|---|---|---|
TUF_REPO_PATH | TUF仓库在容器内的路径,用于存储公钥元数据文件 | /tuf/repo | 否 |
LOG_LEVEL | 日志输出级别,可选值:debug/info/warn/error | info | 否 |
SYNC_INTERVAL | 公钥自动同步间隔(秒),设为0时禁用自动同步 | 3600 | 否 |
OIDC_PROVIDER_ID | 默认OIDC提供商ID(用于简化命令行操作) | - | 否 |
HEALTH_CHECK_PORT | 健康检查HTTP端口 | 8080 | 否 |
yamlversion: '3.8' services: oidc-tuf-ledger: image: oidc-tuf-ledger-manager:latest container_name: oidc-tuf-ledger volumes: - ./tuf-repo:/tuf/repo # 本地TUF仓库目录映射 environment: - TUF_REPO_PATH=/tuf/repo - LOG_LEVEL=info - SYNC_INTERVAL=1800 # 每30分钟同步一次 - HEALTH_CHECK_PORT=8080 ports: - "8080:8080" restart: unless-stopped
容器运行后,可通过docker exec执行以下命令管理公钥账本:
bashdocker exec oidc-tuf-ledger add-oidc-key \ --provider-id "my-oidc-provider" \ --public-key "-----BEGIN PUBLIC KEY-----..." \ # PEM格式公钥 --algorithm "RS256" \ # 公钥算法(如RS256、ES256) --expires "2025-12-31T23:59:59Z" # 公钥过期时间(可选)
bashdocker exec oidc-tuf-ledger update-oidc-key \ --provider-id "my-oidc-provider" \ --new-public-key "-----BEGIN PUBLIC KEY-----..." \ # 新PEM公钥 --new-algorithm "RS256" # 新算法(可选,如不变可省略)
bashdocker exec oidc-tuf-ledger list-oidc-keys
bashdocker exec oidc-tuf-ledger sync-tuf-repo
容器暴露http://localhost:8080/health接口,返回状态码200表示服务正常,包含当前公钥账本版本、最后同步时间等信息:
json{ "status": "healthy", "ledger_version": 5, "last_sync_time": "2024-05-20T14:30:00Z", "provider_count": 3 }

manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务