• 使用docker inspect获取数据卷信息时返回地址为空


    使用 docker inspect 命令查看容器挂载的volume的目录

    $ sudo docker inspect --format "{{.Volumes}}" redis-master
    
    Template parsing error: template: :1:2: executing "" at <.Volume>: map has no entry for key "Volumes"

    结果返回错误,说<.Volumes>为key的map不存在。

       上网查了查,发现有人说这是版本问题,并找到另一种方法,代码如下

    $ sudo docker inspect --format "{{.Config.Volumes}}" redis-master
    
    map[/data:{}]

    这次结果倒是返回了map[/data:{}],但是并没有获取到volume挂载在宿主机上的地址。又查了查,得到另一种方法,代码如下

    ubuntu@ip-172-31-18-10:/etc$ sudo docker inspect redis-master | grep Mount -A 20

    返回结果如下:

    "MountLabel": "",
            "ProcessLabel": "",
            "AppArmorProfile": "",
            "ExecIDs": null,
            "HostConfig": {
                "Binds": null,
                "ContainerIDFile": "",
                "LogConfig": {
                    "Type": "json-file",
                    "Config": {}
                },
                "NetworkMode": "default",
                "PortBindings": {},
                "RestartPolicy": {
                    "Name": "no",
                    "MaximumRetryCount": 0
                },
                "AutoRemove": false,
                "VolumeDriver": "",
                "VolumesFrom": null,
                "CapAdd": null,
    --
            "Mounts": [
                {
                    "Type": "volume",
                    "Name": "0bf25b5934b6174074f1dcbe6fc41e1551a65d22b6a95a74c125edf28be5841c",
                    "Source": "/var/lib/docker/volumes/0bf25b5934b6174074f1dcbe6fc41e1551a65d22b6a95a74c125edf28be5841c/_data",
                    "Destination": "/data",
                    "Driver": "local",
                    "Mode": "",
                    "RW": true,
                    "Propagation": ""
                }
            ],
            "Config": {
                "Hostname": "b969f96befd5",
                "Domainname": "",
                "User": "",
                "AttachStdin": true,
                "AttachStdout": true,
                "AttachStderr": true,
                "ExposedPorts": {
                    "6379/tcp": {}

    红色部分即为volume在宿主机中挂载的位置

    参考:

    使用dockerinspect获取数据卷信息遇到的一点问题 - 云计算技术频道 - 红黑联盟    https://www.2cto.com/net/201702/599896.html

  • 相关阅读:
    使用RabbitMq
    创建.NET core的守护进程
    nginx配置
    让.net core 支持静态文件
    关于sql中如何动态加WHERE条件
    CentOS上部署.net core
    chrom中 background 调用pop.js
    windows下安装redis
    sql server导出大批量数据
    python爬虫笔记
  • 原文地址:https://www.cnblogs.com/wujing-hubei/p/8573593.html
Copyright © 2020-2023  润新知