私はバックアップを構築し、しようとしています 、私たちが作業することをドッカーコンテナのためのソリューションを復元します。 私は、バックアップを構築し、私たちが使用ドッカーコンテナのためのソリューションを復元しようとしています。
私は、作成さを持っている持っている持っているドッカーベースイメージubuntu:base
、欲しいとITへのファイルの追加にドッカーファイルで各IT Aの時間を再構築する必要はありません。 私は、私が作成したドッカーベースイメージを持っているubuntu:base
し、すべてのドッキングウィンドウのファイルの復元を使用する必要がありますする必要はありませんファイルに追加します。
私は、ホストマシンでから実行され、新しい新しいコンテナを作成で使用していることを作成Aスクリプトにしたいubuntu:base
コンテナ。というドッカーイメージして、コピーファイルに 私は、スクリプトホストから作成したいが実行して、使用されてubuntu:base
、新しいコンテナドッカーイメージを作成し、コンテナにコピーします。
どのように私はホストからファイルをコピーすることができます ?コンテナに どのようにコンテナにホストからファイルをコピーするために?
#1階
参考:https://stackoom.com/question/1Y7DT/はドッカーコンテナにホストからファイルをコピーします
ハウス#2
以下は、これを行うには非常に醜い方法ですが、それが動作することができます。
docker run -i ubuntu /bin/bash -c 'cat > file' < file
ハウス#3
溶液が以下に与えられる、 以下のように溶液です。
ドッカーシェルから、 在ドッカーシェル中、
root@123abc:/root# <-- get the container ID
ホストから ホストから
cp thefile.txt /var/lib/docker/devicemapper/mnt/123abc<bunch-o-hex>/rootfs/root
ファイルを直接にコピーしなければならないコンテナはファイルシステムに着座場所。 このファイルは、ファイルシステム上の容器の位置に直接コピーされるべきです。
#4階
私は単にどこから直接ファイルをコピーし 、コンテナがホストマシンから位置しています。 私は、コンテナが直接ホストからの場所からファイルをコピーします。
たとえば、次の 例:
最初のコンテナIDを見つける: 最初のコンテナ番号を識別します。
root@**3aed62678d54**:/home#
そしてホストから、のは、聞かせて :ファイルがホームディレクトリにあると言う ファイルを想定して、その後、ホストからのメインディレクトリにあります:
root@saasdock:/home/dnepangue# cp cheering_nasa.gif /var/lib/docker/aufs/mnt/**3aed62678d54**a5df47a4a00a58bb0312009c2902f8a37498a1427052e8ac454b/home/
戻るコンテナへ... 容器に戻って...
root@**3aed62678d54**:/home# ls cheering_nasa.gif
ハウス#5
コンテナ名または短いコンテナIDを取得します: コンテナ名または短いコンテナのIDを取得します:
$ docker ps
フルコンテナIDを取得します: フルコンテナのIDを取得します:
$ docker inspect -f '{{.Id}}' SHORT_CONTAINER_ID-or-CONTAINER_NAME
ファイルをコピーします。 コピーしたファイルを:
$ sudo cp path-file-host /var/lib/docker/aufs/mnt/FULL_CONTAINER_ID/PATH-NEW-FILE
例: 例:
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d8e703d7e303 solidleon/ssh:latest /usr/sbin/sshd -D cranky_pare
$ docker inspect -f '{{.Id}}' cranky_pare
または いずれか
$ docker inspect -f '{{.Id}}' d8e703d7e303
d8e703d7e3039a6df6d01bd7fb58d1882e592a85059eb16c4b83cf91847f88e5
$ sudo cp file.txt /var/lib/docker/aufs/mnt/**d8e703d7e3039a6df6d01bd7fb58d1882e592a85059eb16c4b83cf91847f88e5**/root/file.txt
ハウス#6
私が見つけたコンテナにファイルをコピーするための最良の方法は、ドッキングウィンドウrunコマンドを使用することである-v
ホスト上のディレクトリをインストールするオプションを。