docker常用语法(包括删除全部容器命令)

centos7:

常用筛选查询命令
1、查看容器的运行状态。

docker inspect --format='{{.State.Running}}' [NAME]/[CONTAINER ID]

2、根据列进行筛选获取某一列属性

docker ps | grep storage | awk '{print $11}'

查看容器的环境变量:

docker exec -it storage0 env

3、range迭代数据
range 用于遍历结构内返回值的所有数据。支持的类型包括 array, slice, map 和 channel。使用要点:
对应的值长度为 0 时,range 不会执行。
结构内部如要使用外部的变量,需要在前面加 引用,比如Var2。
range 也支持 else 操作。效果是:当返回值为空或长度为 0 时执行 else 内的内容。)
#range迭代 需要 end结束符
#if判断 需要 end结束符
例子: #range迭代数据{{end}}为结束符

docker inspect --format '{{range 要迭代的对象}}{{if eq "bind" 要判断的属性}}{{要输出的属性值}}{{print}}{{end}}{{end}}' 容器名或容器ID 
docker inspect --format '{{range .Mounts}}{{if eq "bind" .Type}}{{.Source}}{{print}}{{end}}{{end}}' storage2
[root@dev4 dfsMergeFile]# docker ps
CONTAINER ID        IMAGE                                  COMMAND                  CREATED             STATUS              PORTS               NAMES
d6c0c4a3e3fc        sinoeyes.io/library/debug-server:1.0   "/bin/sh -c ./start.…"   43 minutes ago      Up 43 minutes                           debug-server
2ce62c64fdd1        fa1edc10970c                           "container-entrypoin…"   4 weeks ago         Up 4 weeks                              services-server
3e732e2563fb        luhuiguo/fastdfs                       "/usr/bin/start.sh s…"   8 months ago        Up 3 days                               storage2
06e1671727c9        luhuiguo/fastdfs                       "/usr/bin/start.sh s…"   8 months ago        Up 3 days                               storage0
867564c71b62        luhuiguo/fastdfs                       "/usr/bin/start.sh t…"   8 months ago        Up 2 months                             tracker
[root@dev4 dfsMergeFile]# docker inspect storage2
[
    {
        "Id": "3e732e2563fbcf036bac83c1449566132ffc8b51a4e9baf31146f8676f8b9039",
        "Created": "2019-01-31T07:44:21.421918673Z",
        "Path": "/usr/bin/start.sh",
        "Args": [
            "storage"
        ],
       ……
       ……
       ……
        "Mounts": [
            {
                "Type": "volume",
                "Name": "fd6a411ab2c376847657d504d1412a9e2a400c3c2b0ac8d2d87d604fd1f2f2a9",
                "Source": "/var/lib/docker/volumes/fd6a411ab2c376847657d504d1412a9e2a400c3c2b0ac8d2d87d604fd1f2f2a9/_data",
                "Destination": "/etc/fdfs",
                "Driver": "local",
                "Mode": "",
                "RW": true,
                "Propagation": ""
            },
            {
                "Type": "bind",
                "Source": "/root/data/storage2",
                "Destination": "/var/fdfs",
                "Mode": "",
                "RW": true,
                "Propagation": "rprivate"
            }
        ],
        "Config": {
            "Hostname": "dev4",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "ExposedPorts": {
                "22122/tcp": {},
                "23000/tcp": {},
                "8080/tcp": {},
                "8888/tcp": {}
            },
            "Tty": true,
            "OpenStdin": true,
            "StdinOnce": false,
            "Env": [
                "TRACKER_SERVER=192.168.180.9:22122",
                "GROUP_NAME=group2",
                "PORT=22222",
                "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                "FASTDFS_PATH=/opt/fdfs",
                "FASTDFS_BASE_PATH=/var/fdfs"
            ],
          ……
          ……
          ……
            }
        }
    }
]
[root@dev4 dfsMergeFile]#
[root@dev4 dfsMergeFile]# docker inspect --format '{{range .Mounts}}{{if eq "bind" .Type}}{{.Source}}{{print}}{{end}}{{end}}' storage2
/root/data/storage2
[root@dev4 dfsMergeFile]#


docker search tutorial#搜索可用docker镜像
docker pull learn/tutorial #下载镜像
看日志

#docker logs 你的容器

查询容器

#docker ps -a

启动容器

#docker start 容器名或容器ID

重启容器

#docker restart 容器名或容器ID

停止容器

#docker stop 容器名

删除容器

#docker rm 容器名字

删除镜像docker images

#docker rmi 容器id

进入容器
其中字符串为容器ID:

#docker exec -it d27bd3008ad9 /bin/bash

查询容器docker ps -a
1.停用全部运行中的容器:

#docker stop $(docker ps -q)

2.删除全部容器:

#docker rm $(docker ps -aq)

3.一条命令实现停用并删除容器:

#docker stop $(docker ps -q) & docker rm $(docker ps -aq)

4、删除所有镜像
docker rmi docker images -q

你可能感兴趣的:(IT)