
iptizer/swissswiss 是一个专为故障排除设计的容器,预装了多种工具,旨在简化 Kubernetes 和 Docker 环境中的系统调试和问题诊断工作。该容器可快速部署,支持灵活的使用方式,适用于各类系统问题排查场景。
容器已发布至 Docker Hub:[***]
通过 swiss-host(DaemonSet 版本)可挂载主机资源,方便诊断节点磁盘空间压力等存储相关问题。
部署 swiss 容器后,可通过 tmux 工具将其用作跳板机,连接至集群内其他资源。
适用于 Kubernetes 集群或 Docker 环境中的各类系统问题排查,如网络、资源、服务可用性等。
直接运行临时容器
shkubectl run -it --restart=Never --rm --image=iptizer/swiss swiss -- /bin/bash
Deployment 和 DaemonSet 部署
本镜像提供两种 Kubernetes 部署版本:
部署步骤:
shkubectl create ns troubleshoot
sh# 应用 DaemonSet 配置 kubectl apply -n troubleshoot -f daemonset.yaml # 查看 Pod kubectl get po -n troubleshoot # 进入容器 kubectl exec -it swiss-577np -- bash # 清理 kubectl delete -f daemonset.yaml
sh# 应用 Deployment 配置 kubectl apply -n troubleshoot -f deployment.yaml # 调整副本数为 1 kubectl scale -n troubleshoot --replicas=1 deploy/swiss # 等待 Deployment 可用后进入容器 kubectl wait -n troubleshoot --timeout=600s --for=condition=available deploy/swiss && \ kubectl exec -n troubleshoot -it $( k get po -l "app=swiss" -o jsonpath='{.items[0].metadata.name}' ) -- bash # 清理:调整副本数为 0 并删除 Deployment kubectl scale -n troubleshoot --replicas=0 deploy/swiss kubectl delete -f deployment.yaml
基本运行
shdocker run -it --rm iptizer/swiss -- /bin/bash
包含代理配置
shHTTP_PROXY="[***]" NO_PROXY="127.0.0.1,localhost" docker run --rm --env HTTP_PROXY=${HTTP_PROXY} --env HTTPS_PROXY=${HTTP_PROXY} --env http_proxy=${HTTP_PROXY} --env https_proxy=${HTTP_PROXY} --env NO_PROXY=${NO_PROXY} --env no_proxy=${NO_PROXY} -it iptizer/swiss /bin/bash
若需本地构建镜像,可执行以下命令:
shdocker build . -t iptizer/swiss:latest docker push iptizer/swiss:latest
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务