docker:检查 space 留在容器的卷上
docker: Check space left on volume from container
我在容器中安装了一个卷。该卷具有固定大小,容器将数据写入该卷。如何从容器中检查卷上剩余的 space。
我可以 运行 在主机 运行 宁 docker 上执行命令,但是是否可以从安装卷的容器内部执行此操作?
您基本上可以像在普通 Linux 机器上那样获得容量:df -h
在容器内执行:
先决条件 A: 创建固定大小的卷
docker volume create --driver local --opt type=tmpfs --opt device=tmpfs --opt o=size=100m,uid=1000 fixed-size-volume
先决条件 B: 将卷挂载到容器中任何需要挂载点的位置(/var/fixed-mount-point
在我的示例中)
docker run -it --rm --mount source=fixed-size-volume,target=/var/fixed-mount-point alpine sh
第 1 步: 列出容器内的挂载并按挂载点的名称进行过滤(自从我使用 -it 以来,我的容器内已经有了一个终端。要打开一个终端,你可以使用 docker exec -ti <containerID> sh
/ # df -h | grep fixed
tmpfs 100.0M 0 100.0M 0% /var/fixed-mount-point
第 2 步: 在挂载点创建一个虚拟文件:我使用 dd 创建了一个 1MB 的文件
dd if=/dev/zero of=/var/fixed-mount-point/file.txt count=1024 bs=1024
步骤 3:再次检查卷的容量。注意从 0% 到 1% 的变化
/ # df -h | grep fixed
tmpfs 100.0M 1.0M 99.0M 1% /var/fixed-mount-point
假设您使用以下命令创建卷:
docker volume create --driver local \
--opt type=tmpfs \
--opt device=tmpfs \
--opt o=size=100m,uid=1000 \
data_vol
您可以运行一个docker使用卷(shell命令用于模拟数据创建):
docker run --name vol_test --rm -v data_vol:/data busybox sh -c "while true; do df -h | grep /data ; sleep 1; dd if=/dev/zero bs=1M count=1 >> /data/test;done"
您也可以使用 exec 从外部跟踪卷的演变:
docker exec vol_test df -h | grep /data
我在容器中安装了一个卷。该卷具有固定大小,容器将数据写入该卷。如何从容器中检查卷上剩余的 space。
我可以 运行 在主机 运行 宁 docker 上执行命令,但是是否可以从安装卷的容器内部执行此操作?
您基本上可以像在普通 Linux 机器上那样获得容量:df -h
在容器内执行:
先决条件 A: 创建固定大小的卷
docker volume create --driver local --opt type=tmpfs --opt device=tmpfs --opt o=size=100m,uid=1000 fixed-size-volume
先决条件 B: 将卷挂载到容器中任何需要挂载点的位置(/var/fixed-mount-point
在我的示例中)
docker run -it --rm --mount source=fixed-size-volume,target=/var/fixed-mount-point alpine sh
第 1 步: 列出容器内的挂载并按挂载点的名称进行过滤(自从我使用 -it 以来,我的容器内已经有了一个终端。要打开一个终端,你可以使用 docker exec -ti <containerID> sh
/ # df -h | grep fixed
tmpfs 100.0M 0 100.0M 0% /var/fixed-mount-point
第 2 步: 在挂载点创建一个虚拟文件:我使用 dd 创建了一个 1MB 的文件
dd if=/dev/zero of=/var/fixed-mount-point/file.txt count=1024 bs=1024
步骤 3:再次检查卷的容量。注意从 0% 到 1% 的变化
/ # df -h | grep fixed
tmpfs 100.0M 1.0M 99.0M 1% /var/fixed-mount-point
假设您使用以下命令创建卷:
docker volume create --driver local \
--opt type=tmpfs \
--opt device=tmpfs \
--opt o=size=100m,uid=1000 \
data_vol
您可以运行一个docker使用卷(shell命令用于模拟数据创建):
docker run --name vol_test --rm -v data_vol:/data busybox sh -c "while true; do df -h | grep /data ; sleep 1; dd if=/dev/zero bs=1M count=1 >> /data/test;done"
您也可以使用 exec 从外部跟踪卷的演变:
docker exec vol_test df -h | grep /data