You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查找Docker镜像可挂载卷路径并编写自动化脚本

编写Docker镜像可挂载卷查询脚本

核心思路

利用docker inspect命令获取镜像元数据,从中提取Config.Volumes字段下的所有路径——这就是镜像预定义的可挂载卷位置。

脚本实现

创建名为volumes-ls的Shell脚本,内容如下:

#!/bin/bash

# 检查输入参数数量
if [ $# -ne 1 ]; then
    echo "用法: volumes-ls <镜像名称>"
    exit 1
fi

IMAGE_NAME=$1

# 提取并输出镜像的可挂载卷路径
docker inspect --format '{{range $key, $value := .Config.Volumes}}{{$key}}{{"\n"}}{{end}}' "$IMAGE_NAME"

# 处理镜像不存在或无卷定义的异常
if [ $? -ne 0 ]; then
    echo "错误:镜像不存在或未定义可挂载卷"
    exit 1
fi

配置与使用步骤

  1. 给脚本添加执行权限:
chmod +x volumes-ls
  1. 将脚本移至PATH目录(如/usr/local/bin)实现全局调用:
sudo mv volumes-ls /usr/local/bin/
  1. 使用示例:
  • 查询PHP镜像的可挂载卷:
volumes-ls php

输出:

/var/www/html
  • 查询Elasticsearch镜像的可挂载卷:
volumes-ls elasticsearch

输出示例:

/usr/share/elasticsearch/data
/usr/share/elasticsearch/logs

注意事项

  • 目标镜像需已拉取到本地,或Docker可自动从仓库拉取(需网络正常)
  • 若镜像未定义任何可挂载卷,脚本会返回错误提示

内容的提问来源于stack exchange,提问作者Dimitrios Desyllas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 09:44:55