ホームページ  >  記事  >  バックエンド開発  >  Go クライアントを使用してローカル ファイルを minikube クラスターのポッド コンテナーにコピーするにはどうすればよいですか?

Go クライアントを使用してローカル ファイルを minikube クラスターのポッド コンテナーにコピーするにはどうすればよいですか?

PHPz
PHPz転載
2024-02-06 08:06:141015ブラウズ

如何使用 Go 客户端将本地文件复制到 minikube 集群中的 pod 容器?

質問内容

私のクエリはタイトルとほぼ同じです。ローカル ファイル file.txt があり、それを pod1 のコンテナ container1 にコピーします。

kubectl を使用してこれを行う場合、適切なコマンドは次のとおりです:

kubectl cp file.txt pod1:file.txt -c コンテナ1

しかし、kubectl の go クライアントを使用してそれを実現するにはどうすればよいでしょうか?

2 つの方法を試しましたが、どちらもうまくいきませんでした:

リーリー

これにより、エラー メッセージが表示されました:

スキーム "pkg/runtime/scheme.go:100" の v1.podexecoptions タイプにはタイプがまだ登録されていません

理解できなかったので、別のアプローチを試してみました:

リーリー

ただし、

copyoptions.run() コマンドにはいくつかの問題があり、copyoptions 内で o.args[0] と o.args[0] を見つけようとしますが、 o はインポートされていないため、変更のためにインポートできません。

コンテキスト: https://pkg.go.dev/k8s.io/kubectl/pkg/cmd/cp#copyoptions.run

だから、私は今、本当に迷っていて混乱しています。ご協力をいただければ幸いです。ありがとう。

編集: 可能な方法を考えました。

cmd.exec() を呼び出して kubectl cp コマンドを直接実行することもできますが、それは少し時代遅れのようです。私にとってそれがうまくいくかどうかわかりませんが、何かアイデアはありますか?


正解


これが私が最終的にこれを行うことができた方法です:

リーリー

以上がGo クライアントを使用してローカル ファイルを minikube クラスターのポッド コンテナーにコピーするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。