查看 Docker cp 进度

docker cp 命令本身不提供进度查看功能。但是,您可以使用第三方工具,如 pv(Pipe Viewer)在执行 docker cp 时查看进度。以下是使用 pv 查看 docker cp 进度的步骤:

首先,安装 pv。根据您的操作系统,使用相应的包管理器安装 pv。

# Ubuntu/Debian:
sudo apt-get install pv

# CentOS/RHEL:
sudo yum install pv

# macOS(使用 Homebrew):
brew install pv

容器到主机

要将文件从容器复制到主机并查看进度,请执行以下命令:

docker exec 
<container_name> tar -cf - <source_path_inside_container> | pv | tar -xf - -C <destination_path_on_host>

替换为容器名称, 替换为容器内的源文件/目录路径, 替换为主机上的目标文件/目录路径。 例如,从名为 my_container 的容器复制 /data 目录到主机上的 /tmp/data 目录: “` docker exec my_container tar -cf – /data | pv | tar -xf – -C /tmp/data “` pv 将显示一个进度条,以及已传输、剩余和总字节数。 ## 主机到容器 如果要从主机复制到容器并查看进度,可以使用以下命令: “` tar -cf – | pv | docker exec -i tar -xf – -C “` 将 ` ` 替换为主机上的源文件/目录路径,` ` 替换为容器名称,“ 替换为容器内的目标文件/目录路径。 例如,从主机上的 /tmp/data 目录复制到名为 my_container 的容器中的 /data 目录: “` tar -cf – /tmp/data | pv | docker exec -i my_container tar -xf – -C /data “` 这个命令会将主机上的文件/目录通过 tar 命令打包,然后通过 pv 查看进度,并通过管道将数据发送到容器中。在容器中,tar 命令会将数据解包到指定的目录。pv 将显示一个进度条,以及已传输、剩余和总字节数。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注