Jest to polecenie docker-cp, które można uruchomić u dostawcy bezpłatnego hostingu OnWorks przy użyciu jednej z naszych wielu bezpłatnych stacji roboczych online, takich jak Ubuntu Online, Fedora Online, emulator online systemu Windows lub emulator online systemu Mac OS
PROGRAM:
IMIĘ
docker-cp — kopiuje pliki/foldery między kontenerem a lokalnym systemem plików.
STRESZCZENIE
doker cp [--help] KONTENER:SRC_ŚCIEŻKA_DEST_PATH|-
doker cp [--help] SRC_PATH|- KONTENER:DEST_PATH
OPIS
Połączenia doker cp narzędzie kopiuje zawartość SRC_PATH do DEST_PATH. Możesz kopiować z
system plików kontenera na maszynę lokalną lub odwrotnie, z lokalnego systemu plików
do pojemnika. Gdyby - jest określony dla SRC_PATH or DEST_PATH, Można również
przesyłaj strumieniowo archiwum tar z STDIN lub STDOUT, POJEMNIK może być uruchomiony lub zatrzymany
pojemnik. ten SRC_PATH or DEST_PATH być plikiem lub katalogiem.
Połączenia doker cp polecenie zakłada, że ścieżki kontenera są względne w stosunku do kontenera / (root)
informator. Oznacza to, że podanie początkowego ukośnika jest opcjonalne; Polecenie widzi
współczucie_darwin:/tmp/foo/myfile.txt i współczucie_darwin:tmp/foo/myfile.txt as
identyczny. Lokalne ścieżki maszynowe mogą być wartością bezwzględną lub względną. Komenda
interpretuje względne ścieżki komputera lokalnego jako względne w stosunku do bieżącego katalogu roboczego
gdzie doker cp prowadzony jest.
Połączenia cp polecenie zachowuje się jak Unix cp -a polecenie w których katalogi są kopiowane
rekursywnie z zachowaniem uprawnień, jeśli to możliwe. Własność jest ustawiona na użytkownika i
grupa podstawowa w miejscu docelowym. Na przykład tworzone są pliki kopiowane do kontenera
w UID: GID użytkownika root. Pliki kopiowane na komputer lokalny są tworzone za pomocą
UID: GID użytkownika, który wywołał doker cp Komenda. Jeśli określisz -L opcja,
doker cp podąża za dowolnym dowiązaniem symbolicznym w SRC_PATH.
Zakładając separator ścieżki /, pierwszy argument SRC_PATH i drugi argument z
DEST_PATHzachowanie jest następujące:
· SRC_PATH określa plik
· DEST_PATH nie istnieje
· plik jest zapisywany do pliku utworzonego w DEST_PATH
· DEST_PATH nie istnieje i kończy się na /
· Warunek błędu: katalog docelowy musi istnieć.
· DEST_PATH istnieje i jest plikiem
· miejsce docelowe jest nadpisywane zawartością pliku źródłowego
· DEST_PATH istnieje i jest katalogiem
· plik jest kopiowany do tego katalogu przy użyciu nazwy bazowej z SRC_PATH
· SRC_PATH określa katalog
· DEST_PATH nie istnieje
· DEST_PATH jest tworzony jako katalog, a treść katalogu źródłowego są kopiowane
do tego katalogu
· DEST_PATH istnieje i jest plikiem
· Warunek błędu: nie można skopiować katalogu do pliku
· DEST_PATH istnieje i jest katalogiem
· SRC_PATH nie kończy się na /.
· katalog źródłowy jest kopiowany do tego katalogu
· SRC_PATH kończy się na /.
· ten zawartość z katalogu źródłowego jest kopiowany do tego katalogu
Polecenie wymaga SRC_PATH i DEST_PATH istnieć zgodnie z powyższymi zasadami. Gdyby
SRC_PATH jest lokalny i jest dowiązaniem symbolicznym, dowiązanie symboliczne, a nie cel, jest kopiowane przez
domyślny. Aby skopiować cel linku, a nie link, określ -L opcja.
Dwukropek (:) jest używany jako separator między POJEMNIK i jego ścieżkę. Możesz także użyć : jeśli chodzi o komunikację i motywację
określanie ścieżek do SRC_PATH or DEST_PATH na przykład na komputerze lokalnym
plik:nazwa.txt. Jeśli używasz : w ścieżce komputera lokalnego, musisz być wyraźny z
ścieżka względna lub bezwzględna, na przykład:
`/ścieżka/do/pliku:nazwa.txt` lub `./plik:nazwa.txt`
Nie można skopiować niektórych plików systemowych, takich jak zasoby do / proc, / sys, / dev,
oraz mocowania utworzone przez użytkownika w kontenerze.
Korzystanie z - jak SRC_PATH przesyła strumieniowo zawartość STDIN jako archiwum smoły. Komenda
ekstrahuje zawartość smoły do DEST_PATH w systemie plików kontenera. W tym przypadku,
DEST_PATH musi określić katalog. Za pomocą - as DEST_PATH przesyła strumieniowo zawartość
zasób jako archiwum tar do STDOUT.
OPCJE
-L, --podążaj za linkiem=prawdziwy|fałszywy
Podążaj za linkiem symbolicznym w SRC_PATH
--help
Wydrukuj oświadczenie o użyciu
PRZYKŁADY
Załóżmy, że kontener zakończył tworzenie jakiegoś pliku wyjściowego w postaci pliku, który zapisuje gdzieś w
jego system plików. Może to być wynik pracy kompilacji lub inne obliczenia. Możesz
skopiuj te dane wyjściowe z kontenera do lokalizacji na hoście lokalnym.
Jeśli chcesz skopiować /tmp/foo katalog z kontenera do istniejącego / Tmp katalog
na twoim hoście. Jeśli uciekniesz doker cp w twoim (domowym) katalogu na lokalnym hoście:
$ docker cp współczucie_darwin:tmp/foo / Tmp
Docker tworzy /tmp/foo katalogu na twoim hoście. Alternatywnie możesz pominąć wiodące
ukośnik w poleceniu. Jeśli wykonasz to polecenie ze swojego katalogu domowego:
$ docker cp współczucie_darwin:tmp/foo tmp
If / Tmp nie istnieje, Docker utworzy go i skopiuje zawartość /tmp/foo z
kontenera do tego nowego katalogu. Gdyby / Tmp już istnieje jako katalog, to Docker
skopiuje zawartość /tmp/foo z kontenera do katalogu at /tmp/foo.
Podczas kopiowania pojedynczego pliku do istniejącego ŚCIEŻKA LOKALNAThe doker cp polecenie będzie albo
nadpisz zawartość ŚCIEŻKA LOKALNA jeśli jest to plik lub umieść go w ŚCIEŻKA LOKALNA jeśli to jest
katalog, nadpisując istniejący plik o tej samej nazwie, jeśli taki istnieje. Na przykład to
polecenie:
$ docker cp Sharp_ptolemy:/tmp/foo/myfile.txt /test
If /test nie istnieje na komputerze lokalnym, zostanie utworzony jako plik z
zawartość /tmp/foo/mojplik.txt z pojemnika. Gdyby /test istnieje jako plik, będzie
nadpisany. Wreszcie, jeśli /test istnieje jako katalog, plik zostanie skopiowany do
/test/mójplik.txt.
Następnie załóżmy, że chcesz skopiować plik lub folder do kontenera. Na przykład może to:
być plikiem konfiguracyjnym lub innym danymi wejściowymi do długotrwałych obliczeń, które byś
chciałbym umieścić w utworzonym pojemniku przed rozpoczęciem. Jest to przydatne, ponieważ nie
nie wymagają istnienia pliku konfiguracyjnego ani innych danych wejściowych w obrazie kontenera.
Jeśli masz plik, plik konfiguracyjny.yml, w bieżącym katalogu na lokalnym hoście i chcesz
skopiuj go do istniejącego katalogu na /etc/moja-aplikacja.d w kontenerze to polecenie może być
używany:
$ docker cp config.yml myappcontainer:/etc/my-app.d
Jeśli masz kilka plików w katalogu lokalnym / konfiguracja które musisz skopiować do
katalog /etc/moja-aplikacja.d w pojemniku:
$ cp docker /config/. mojaaplikacja:/etc/moja-aplikacja.d
Powyższe polecenie skopiuje zawartość lokalnego / konfiguracja katalog do katalogu
/etc/moja-aplikacja.d w pojemniku.
Wreszcie, jeśli chcesz skopiować dowiązanie symboliczne do kontenera, zazwyczaj chcesz skopiować
połączony cel, a nie samo łącze. Aby skopiować cel, użyj -L opcja, dla
przykład:
$ ln -s /tmp/jakiśplik /tmp/jakiśplik.ln
$ docker cp -L /tmp/somefile.ln myappcontainer:/ tmp /
To polecenie kopiuje zawartość lokalnego /tmp/jakiśplik do pliku /tmp/jakiśplik.ln in
pojemnik. Z pominięciem -L opcja, /tmp/jakiśplik.ln zachowuje swoje dowiązanie symboliczne, ale nie
jego treść.
HISTORIA
Kwiecień 2014, Oryginalnie skompilowany przez Williama Henry'ego (whenry at redhat dot com) na podstawie
materiał źródłowy docker.com i prace wewnętrzne. Czerwiec 2014, aktualizacja Sven Dowideit
⟨[email chroniony]⟩ Maj 2015, aktualizacja Josh Hawn ⟨[email chroniony]⟩
Korzystaj z docker-cp online za pomocą usług onworks.net