kubectl exec -it <POD> getting sh: can't open 'export': No such file or directory

kubectl exec -it <POD> getting sh: can't open 'export': No such file or directory

我尝试执行这个命令:

alias kubectl_winpty='winpty kubectl'   ( using winpty due to [bug][1] 
kubectl_winpty exec -it vault-0 -n vault-xxx -- sh export VAULT_CACERT=/vault/userconfig/vault-tls/vault.ca

但我收到此错误:

sh: can't open 'export': No such file or directory
command terminated with exit code 2

pod 确实存在并且 运行

$ kubectl get pods vault-0 -n vault-xxx
NAME      READY   STATUS    RESTARTS   AGE
vault-0   0/1     Running   0          17m

我猜 sh export 让 shell 假设导出为文件名(某些脚本 shell 会 运行)。因此错误 can't open 'export': No such file or directory.

尝试使用 -c 选项。

kubectl_winpty exec -it vault-0 -n vault-xxx -- sh -c "export VAULT_CACERT=/vault/userconfig/vault-tls/vault.ca"

另外最好set env variable when you create this pod

还要确保 your pod is healthy and in ready state,根据 kubectl get 输出并非如此。