Go Client を使用して Kubernetes ポッドでコマンドを実行する
この説明では、クライアントに行きます。このタスクを実行するには、Kubernetes が提供するリモートコマンド ライブラリを利用します。
Background:
最初は、 err = exec.Stream( sopt) 呼び出しは、有益なエラー メッセージを表示せずに失敗します。これを修正するには、より構造化されたアプローチを実装することをお勧めします。
解決策:
次のパラメータを取るヘルパー関数 ExecCmdExample を定義します。 :
ExecCmdExample 関数内:
コード例:
package k8s import ( "io" v1 "k8s.io/api/core/v1" "k8s.io/client-go/kubernetes" "k8s.io/client-go/kubernetes/scheme" "k8s.io/client-go/rest" api "k8s.io/client-go/tools/remotecommand" ) func ExecCmdExample(client kubernetes.Interface, config *restclient.Config, podName string, command string, stdin io.Reader, stdout io.Writer, stderr io.Writer) error { // ... (same as the provided solution) }
この修正されたコードにより、エラーの問題が解決され、コマンドを正常に実行できるようになります。ポッド内。
以上がGo クライアントを使用して Kubernetes ポッド コマンドを実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。