我试图连接到一个容器上,从运行在Kubernetes中的容器中抛出Kubernetes WebSocket API,但没有成功。
安装wscat
apt-get update
apt-get install -y npm
ln -s /usr/bin/nodejs /usr/bin/node
npm install -g n
n stable
npm install -g wscat
Kubernetes API的Exec:
wscat -c "wss://kubernetes.default.svc.cluster.local/api/v1/namespaces/default/pods/my-pod-1623018646-kvc4b/exec?container=aws&stdin=1&stdout=1&stderr=1&tty=1&command=bash" \
--ca /var/run/secrets/kubernetes.io/serviceaccount/ca.crt \
-H "Authorization: Bearer $(</var/run/secrets/kubernetes.io/serviceaccount/token)"
error: Error: unexpected server response (400)
你知道我做错了什么吗?
请注意,以下工作:
curl https://kubernetes.default.svc.cluster.local/api/v1/namespaces/default/pods/my-pod-1623018646-kvc4b \
--cacert /var/run/secrets/kubernetes.io/serviceaccount/ca.crt \
-H "Authorization: Bearer $(</var/run/secrets/kubernetes.io/serviceaccount/token)"
显然,有些人能够连接:https://stackoverflow.com/a/43841572/599728
干杯
发布于 2017-06-07 07:15:12
我刚发现容器的名字是错的:
?container=aws
Aws不在这个豆荚上。
https://stackoverflow.com/questions/44394839
复制