
docker-kubectl-awscli 是一个集成了 kubectl、kubesec 和 awscli 工具的 Docker 镜像。基于 Alpine 版本的 Python 2 构建,兼顾轻量性与功能完整性,可提供无冗余的一站式工具环境。主要用途包括 Kubernetes 集群管理、Kubernetes 资源安全扫描及 AWS 云服务操作。
提供多版本标签,工具版本明确可控,满足不同环境兼容性需求。
| 镜像标签 | kubectl 版本 | kubesec 版本 | awscli 版本 |
|---|---|---|---|
v1.9.3 | 1.9.3 | 0.6.1 | 最新版本 |
v1.11.2 | 1.11.2 | 0.6.1 | 最新版本 |
kubectl 资源部署、awscli 资源上传(如 S3 资产推送)及 kubesec 安全扫描。kubesec 扫描本地或集群中的 K8s 资源配置文件,识别安全风险(如未限制特权、使用最新镜像标签等)。通过挂载不同配置文件(如 kubeconfig、AWS 凭证),快速切换 K8s 集群或 AWS 账户上下文。
需指定具体版本标签(如 v1.11.2),示例命令:
bashdocker pull [镜像仓库地址]/docker-kubectl-awscli:v1.11.2 # 注:请将 [镜像仓库地址] 替换为实际镜像仓库(如 Docker Hub 用户名或私有仓库地址)
1. 交互式模式(进入容器 shell)
bashdocker run -it --rm [镜像仓库地址]/docker-kubectl-awscli:v1.11.2 sh
进入后可直接使用工具:
bash# 验证工具版本 kubectl version --client aws --version kubesec version
2. 执行单条命令
直接在容器中运行工具命令,执行后自动退出:
bash# 查看 kubectl 客户端版本 docker run --rm [镜像仓库地址]/docker-kubectl-awscli:v1.11.2 kubectl version --client # 扫描本地 K8s 部署文件(需挂载文件到容器) docker run --rm -v $(pwd)/deployment.yaml:/deployment.yaml [镜像仓库地址]/docker-kubectl-awscli:v1.11.2 kubesec scan /deployment.yaml # 列出 AWS S3 存储桶(需配置 AWS 凭证) docker run --rm -e AWS_ACCESS_KEY_ID=xxx -e AWS_SECRET_ACCESS_KEY=xxx -e AWS_REGION=us-east-1 [镜像仓库地址]/docker-kubectl-awscli:v1.11.2 aws s3 ls
3. 挂载配置文件(推荐)
挂载本地配置文件到容器,避免重复输入凭证或集群信息:
bash# 挂载 K8s 配置(~/.kube/config)和 AWS 凭证(~/.aws/credentials) docker run -it --rm \ -v ~/.kube/config:/root/.kube/config \ # K8s 集群配置 -v ~/.aws/credentials:/root/.aws/credentials \ # AWS 凭证 [镜像仓库地址]/docker-kubectl-awscli:v1.11.2 sh
进入容器后可直接操作目标 K8s 集群或 AWS 账户。
创建 docker-compose.yml,定义固定挂载和环境变量:
yamlversion: '3' services: kubectl-awscli: image: [镜像仓库地址]/docker-kubectl-awscli:v1.11.2 volumes: - ~/.kube/config:/root/.kube/config:ro # 只读挂载 K8s 配置 - ~/.aws/credentials:/root/.aws/credentials:ro # 只读挂载 AWS 凭证 - ./k8s-resources:/k8s-resources # 挂载本地 K8s 资源文件目录 environment: - AWS_REGION=us-east-1 # 默认 AWS 区域 tty: true # 支持交互式终端
启动并进入容器:
bashdocker-compose up -d docker-compose exec kubectl-awscli sh
| 变量名 | 说明 | 示例值 |
|---|---|---|
AWS_ACCESS_KEY_ID | AWS 访问密钥 ID(替代凭证文件) | AKIAEXAMPLE |
AWS_SECRET_ACCESS_KEY | AWS 密钥(替代凭证文件) | secret123 |
AWS_REGION | 默认 AWS 区域 | us-west-2 |
KUBECONFIG | 自定义 kubeconfig 文件路径(容器内) | /custom/kubeconfig |
| 本地路径 | 容器内路径 | 说明 |
|---|---|---|
~/.kube/config | /root/.kube/config | K8s 集群配置文件 |
~/.aws/credentials | /root/.aws/credentials | AWS 凭证文件(默认路径) |
| 本地文件/目录 | /任意路径 | 自定义资源文件(如 K8s YAML) |
kubectl 版本需与目标 K8s 集群版本匹配(推荐客户端版本 ≤ 服务端版本),请根据集群版本选择镜像标签(如 v1.11.2 对应 kubectl 1.11.2)。:ro),避免容器内误修改。awscli 为构建时的最新版本,如需固定版本,需通过自定义 Dockerfile 调整。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务