我创建了一个 docker 卷“hello”,它包含一些数据。
如何将数据复制到host?
第一:
kerydeMacBook-Pro:~ hu$ docker volume create --name hello
hello
检查:
kerydeMacBook-Pro:~ hu$ docker volume ls
DRIVER VOLUME NAME
local hello
音量“你好”检查
kerydeMacBook-Pro:~ hu$ docker volume inspect hello
[
{
"Name": "hello",
"Driver": "local",
"Mountpoint": "/mnt/sda1/var/lib/docker/volumes/hello/_data"
}
]
如何将卷“hello”上的数据复制到主机?
我试过了:
kerydeMacBook-Pro:~ hu$ docker cp hello:/mnt/sda1/var/lib/docker/volumes/hello/_data /Users/hu/Desktop/12
Error response from daemon: no such id: hello
它没有按预期工作!
谁能帮帮我?
要将数据从 volume 复制到 host,请使用已安装该卷的临时容器。
CID=$(docker run -d -v hello:/hello busybox true)
docker cp $CID:/hello ./
将目录从host复制到volume
cd local_dir
docker cp . $CID:/hello/
然后清理临时容器
docker rm $CID
在将操作系统升级到新版本时,除了安装旧机外,还要安装新版本并同时安装 SSD。高清,我刚刚将卷从一个系统转移到另一个系统 主机级别的简单文件副本。该系统是 Linux Mint,它对任何基于 *nix 的机器都应该是一样的。抱歉,我不知道 Windows。
运行新系统时:
/var/lib/docker/volumes/
下)copy -a -r
)他们的_data
文件夹内容到他们的对应当然,所有这些操作都必须以 root 身份完成。
在新系统上启动 Docker Compose 堆栈后,我发现那里的所有数据(包括 PostgreSQL DB)与旧系统中的完全一样。
您不需要运行任何额外的容器,您可以使用现有容器执行此任务。
从容器复制文件到本地路径
docker cp CONTAINER:/var/logs/ /tmp/app_logs
复制本地文件到容器中
docker cp ./some_file CONTAINER:/work