Bitbucket Pipelines Kubectl 镜像是一个轻量级 Docker 镜像,基于 Alpine Linux 3.16 构建,内置 Kubernetes 命令行工具 kubectl。该镜像由 Atlassian Bitbucket Pipelines 团队维护,旨在为 Bitbucket CI/CD 流程提供标准化的 kubectl 运行环境,简化在自动化流水线中与 Kubernetes 集群的交互操作。
kubectl 命令(如部署应用、查看集群资源、配置 Kubernetes 资源等)。kubectl 的便捷工具,无需手动安装和配置。kubectl 命令行工具,支持与 Kubernetes 集群的所有标准交互操作。ca-certificates、bash),确保 HTTPS 通信安全性和基本 shell 环境支持。kubectl 版本,确保与目标 Kubernetes 集群版本兼容。ENTRYPOINT 设为 kubectl,容器启动即可直接执行命令,简化流水线配置。kubectl 部署应用到 Kubernetes 集群、更新配置或执行集群检查。kubectl 的容器,无需在本地系统安装 kubectl。kubectl 命令。kubectl 版本的自动化脚本或工具链。kubectl 运行环境的场景。构建镜像(推荐)
若需自定义 kubectl 版本,可基于提供的 Dockerfile 构建镜像:
bash# 克隆包含 Dockerfile 的仓库后执行构建,指定 kubectl 版本(如 1.28.0) docker build --build-arg VERSION=1.28.0 -t bitbucket-pipelines-kubectl:1.28.0 .
拉取预构建镜像(如已托管)
若镜像已上传至容器仓库(如 Docker Hub、Atlassian 私有仓库),可直接拉取:
bashdocker pull <仓库地址>/bitbucket-pipelines-kubectl:<版本号> # 示例:docker pull my-registry/kubectl:1.28.0
kubectl 命令由于镜像默认 ENTRYPOINT 为 kubectl,容器启动时的命令参数将直接作为 kubectl 的子命令和参数。
基础命令示例
查看 kubectl 版本:
bashdocker run --rm bitbucket-pipelines-kubectl:1.28.0 version --client
查看 Kubernetes 集群 pods(需挂载本地 kubeconfig 以访问集群):
bash# 将本地 ~/.kube/config 挂载到容器内 /root/.kube/config(容器默认工作目录为 /root) docker run --rm -v ~/.kube/config:/root/.kube/config bitbucket-pipelines-kubectl:1.28.0 get pods
在 bitbucket-pipelines.yml 中配置步骤,使用该镜像执行 kubectl 命令。示例如下:
yamlpipelines: default: - step: name: Deploy to Kubernetes Cluster image: bitbucket-pipelines-kubectl:1.28.0 # 使用构建或拉取的镜像 script: - kubectl config use-context my-k8s-cluster # 切换到目标集群上下文(需提前配置集群访问凭证) - kubectl apply -f k8s/deployment.yaml # 应用部署配置 - kubectl rollout status deployment/my-app # 检查部署状态 - kubectl get pods -l app=my-app # 验证 pod 启动
构建参数(ARG)
| 参数名 | 说明 | 示例值 |
|---|---|---|
VERSION | 指定 kubectl 版本,对应 Kubernetes 官方 release 版本(如 1.28.0) | 1.28.0 |
环境变量(ENV)
| 变量名 | 说明 | 来源 |
|---|---|---|
KUBE_VERSION | 容器内反映构建时指定的 kubectl 版本 | 构建时由 ARG VERSION 注入 |
bash# 挂载本地 kubeconfig,执行 kubectl 命令查看集群节点 docker run --rm \ -v ~/.kube/config:/root/.kube/config \ # 挂载集群访问配置 bitbucket-pipelines-kubectl:1.28.0 \ # 使用指定版本镜像 get nodes --output wide # kubectl 命令及参数
在 bitbucket-pipelines.yml 中配置 Kubernetes 集群访问凭证(通过 Bitbucket 环境变量注入),并执行部署:
yamlpipelines: branches: main: # 仅在 main 分支触发 - step: name: Deploy to Production Cluster image: bitbucket-pipelines-kubectl:1.28.0 script: # 将 Bitbucket 环境变量中的集群凭证写入 kubeconfig - echo "$KUBE_CONFIG" > /root/.kube/config # 部署应用并验证 - kubectl apply -f k8s/prod/deployment.yaml - kubectl set image deployment/my-app my-app=my-registry/my-app:${BITBUCKET_COMMIT} # 使用当前提交哈希作为镜像标签 - kubectl rollout status deployment/my-app environment: # 在 Bitbucket 仓库设置中配置 KUBE_CONFIG 环境变量(存储 base64 编码的 kubeconfig 内容) KUBE_CONFIG: $KUBE_CONFIG
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。


探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 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 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务