Apache SkyWalking CLI(命令行界面)是Apache SkyWalking的官方命令行交互工具,作为浏览器GUI的替代方案,供用户或运维团队通过命令行与SkyWalking进行交互。该工具基于SkyWalking https://github.com/apache/skywalking-query-protocol%E5%BC%80%E5%8F%91%EF%BC%8C%E5%8A%9F%E8%83%BD%E4%B8%8EGUI%E4%B8%80%E8%87%B4%E3%80%82
自0.9.0版本起,SkyWalking CLI提供Docker镜像以简化部署与使用流程。同时,为方便开发者测试最新功能,项目向GitHub容器 registry推送快照镜像(非Apache官方发布,仅用于测试,禁止在生产环境使用)。
swctl help命令获取详细使用说明及示例。apache/skywalking-cli镜像。ghcr.io/apache/skywalking-cli/skywalking-cli测试新功能。4.1.1 拉取官方镜像
shelldocker pull apache/skywalking-cli:latest
4.1.2 基本运行命令
通过docker run直接执行CLI命令,示例如下:
shell# 列出所有服务 docker run -it --rm apache/skywalking-cli service ls # 查询特定服务指标(假设服务名为"product-service") docker run -it --rm apache/skywalking-cli metrics get --service-name product-service --metric-name service_resp_time
-it:交互式终端,支持命令行输入。--rm:命令执行后自动删除容器,避免残留。4.1.3 使用快照镜像(测试用)
shell# 拉取快照镜像 docker pull ghcr.io/apache/skywalking-cli/skywalking-cli:latest # 运行快照镜像命令 docker run -it --rm ghcr.io/apache/skywalking-cli/skywalking-cli service ls
4.1.4 Docker Compose示例
如需与SkyWalking OAP服务联动(如连接远程OAP服务器),可通过docker-compose.yml配置网络与环境变量:
yamlversion: '3.8' services: skywalking-cli: image: apache/skywalking-cli:latest command: service ls # 执行的CLI命令 environment: - SW_OAP_URL=http://oap:11800 # 连接OAP服务的地址(需与OAP容器网络互通) networks: - skywalking-network # 与OAP服务共享网络 networks: skywalking-network: external: true # 假设已存在SkyWalking OAP所在网络
启动命令:
shelldocker-compose up
除Docker外,CLI还支持以下安装方式(详情参见官方文档):
make命令编译(需Go环境)。CLI需连接SkyWalking OAP服务以执行操作,默认连接本地OAP(http://localhost:11800)。如需连接远程OAP,可通过以下方式指定:
命令行参数
shelldocker run -it --rm apache/skywalking-cli --oap-url http://remote-oap:11800 service ls
环境变量
shelldocker run -it --rm -e SW_OAP_URL=http://remote-oap:11800 apache/skywalking-cli service ls
若OAP启用认证,需通过--auth-token参数或SW_AUTH_TOKEN环境变量传入令牌:
shelldocker run -it --rm -e SW_AUTH_TOKEN=your-token apache/skywalking-cli service ls
CLI支持bash与PowerShell自动补全,可通过容器内命令生成补全脚本。
shell# 生成补全脚本并配置 docker run --rm apache/skywalking-cli completion bash > swctl_bash_completion sudo cp swctl_bash_completion /etc/bash_completion.d/swctl echo "export PROG=swctl" >> ~/.bashrc source ~/.bashrc
powershell# 生成补全脚本并配置(需管理员权限) docker run --rm apache/skywalking-cli completion powershell >> $profile Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
通过help命令获取详细使用说明:
shell# 查看全局帮助 docker run --rm apache/skywalking-cli help # 查看特定子命令帮助(如service list) docker run --rm apache/skywalking-cli service help list
在GitHub Actions部署流程中嵌入CLI,上报服务部署事件至SkyWalking:
yamljobs: deploy: runs-on: ubuntu-latest steps: - name: 部署服务并上报事件 uses: docker://apache/skywalking-cli:latest with: args: event report --service product-service --instance asia-southeast --message "Deploy v1.2.0" env: SW_OAP_URL: ${{ secrets.OAP_URL }} SW_AUTH_TOKEN: ${{ secrets.OAP_AUTH_TOKEN }}
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 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 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务