翻訳
このドキュメントは The Kubectl Book の翻訳です。翻訳の GitHub リポジトリはこちら。
TL;DR
- クラスタ内のコンテナに / コンテナからファイルをコピーする
コンテナのファイルをコピー
動機
- クラスタ内のコンテナからローカルのファイルシステムにファイルをコピーする
- ローカルのファイルシステムからクラスタ内のコンテナにファイルをコピーする
Tar のインストール
コピーするには、コンテナイメージ内に tar のインストールが必要です。
ローカルからリモートへ
ローカルのファイルをリモートにあるクラスタ内の Pod にコピーします。
- ローカルファイルの形式は
<path>
- リモートファイルの形式は
<pod-name>:<path>
kubectl cp /tmp/foo_dir <some-pod>:/tmp/bar_dir
リモートからローカルへ
Pod からリモートのファイルをローカルのファイルにコピーします。
- ローカルファイルの形式は
<path>
- リモートファイルの形式は
<pod-name>:<path>
kubectl cp /tmp/foo <some-pod>:/tmp/bar
コンテナを指定
複数コンテナを実行している Pod 内で特定のコンテナを指定します。
-c <container-name>
kubectl cp /tmp/foo <some-pod>:/tmp/bar -c <specific-container>
名前空間
Pod の名前空間を指定するには、Pod 名に <namespace>/
という接頭辞を付けます。
<pod-namespace>/<pod-name>:<path>
kubectl cp /tmp/foo <some-namespace>/<some-pod>:/tmp/bar