1. 程式人生 > 其它 >docker容器內檔案的上傳和下載

docker容器內檔案的上傳和下載

宿主機內檔案複製到docker容器內,即檔案上傳。docker容器內檔案複製到宿主機內,即檔案下載。
a.上傳檔案命令:
docker cp 要拷貝的檔案路徑 containerID(CONTAINERNAME):要拷貝到容器裡的檔案路徑
示例:docker cp /usr/bin/a.txt myjenkins: /var/jenkins_home,linux系統裡宿主機檔案路徑 /usr/bin/a.txt,windows系統的話,路徑表示式:D:/a.txt
b.下載檔案命令:
docker cp containerID(CONTAINERNAME):容器內要拷貝的檔案或資料夾路徑 要拷貝到宿主機內的目標路徑


示例: docker cp mykenkins:/var/jenkins_home/requirements.txt /var(D:/project_test/)

注意的點是:命令均在宿主機上面執行命令,目錄的上傳和下載,需要對目錄下的層級目錄分別執行cp,本人在拷貝過程中,出現過下載某目錄檔案到宿主機,其他該目錄下的資料夾沒下載拷貝到宿主機。
記錄:
容器內下載python的編譯目錄到本地宿主機(windows)
docker cp 8269c92495b0:/var/jenkins_home/python3/ D:/docker_run/python3--該命令會在宿主機內D:/docker_run/python3下複製資料夾,且只有資料夾python-3.8.6被拷貝。
其他編譯資料夾如bin,lib等未拷貝到宿主機內,需再一條一條執行
docker cp CONTAINERID:/var/jenkins_home/python3/bin D:/docker_run/python3


docker cp CONTAINERID:/var/jenkins_home/python3/include D:/docker_run/python3
docker cp CONTAINERID:/var/jenkins_home/python3/lib D:/docker_run/python3
docker cp CONTAINERID:/var/jenkins_home/python3/share D:/docker_run/python3
c.另附一條進入容器內命令
docker exec -it -uroot CONTAINERID /bin/bash