hashicorppreview/hcphcp CLI Docker镜像提供了管理HashiCorp Cloud Platform (HCP)资源和服务的工具。您可以直接与hcp交互,或将其集成到脚本中实现工作流自动化。HCP CLI跨多数平台可用,能高效执行常见平台任务并大规模管理HCP资源。
该镜像可用于交互式运行hcp CLI,适用于需要手动输入命令的场景:
bash$ docker run -it hashicorp/hcp # hcp auth login --client-id=<客户端ID> --client-secret=<客户端密钥> # hcp <其他命令>
执行上述命令后,将进入容器的交互式终端,可直接输入hcp命令进行操作,首次使用需通过hcp auth login命令登录。
非交互式使用需在调用时传递凭证,通常用于脚本自动化,需使用服务主体凭证。有以下两种传递方式:
1. 使用环境变量
最简单的方式是通过环境变量传递服务主体凭证:
bash$ docker run -e HCP_CLIENT_ID=<客户端ID> -e HCP_CLIENT_SECRET=<客户端密钥> hashicorp/hcp hcp <命令>
-e HCP_CLIENT_ID:设置服务主体的客户端ID-e HCP_CLIENT_SECRET:设置服务主体的客户端密钥<命令>:需执行的hcp具体命令(如organizations list)2. 使用凭证文件
更安全的方式是创建包含服务主体凭证的文件并挂载到容器中。创建凭证文件的详细步骤可参考官方文档,若使用工作负载身份提供商,可参考create-cred-file命令。
创建凭证文件示例:
bash$ hcp iam service-principals create example-sp # 创建服务主体 $ hcp iam service-principals keys create example-sp --output-cred-file=cred_file.json # 创建凭证文件
挂载凭证文件到容器:
bash$ docker run -v /本地路径/凭证文件目录/:/root/hcp/ \ -e HCP_CRED_FILE=/root/hcp/cred_file.json hashicorp/hcp hcp <命令>
-v /本地路径/凭证文件目录/:/root/hcp/:将本地凭证文件目录挂载到容器内/root/hcp/路径-e HCP_CRED_FILE=/root/hcp/cred_file.json:设置环境变量指定凭证文件路径,CLI将通过该文件认证<命令>:需执行的hcp具体命令manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务