Docker
Docker查看所有容器的IP
DockerRegistry
Harbor仓库管理
Dockerfile文件基本说明
docker常用命令
安装docker-ce
将Linux操作系统打包为Docker镜像
docker-compose
容器中没有netstat和ss命令怎么查端口监听?
本文档使用 MrDoc 发布
-
+
首页
docker常用命令
# docker常用命令 ## 1、查询docker容器信息 ### 查看docker容器版本 ```shell [root@master1 ~]# docker version Client: Version: 18.09.9 API version: 1.39 Go version: go1.11.13 Git commit: 039a7df9ba Built: Wed Sep 4 16:51:21 2019 OS/Arch: linux/amd64 Experimental: false Server: Docker Engine - Community Engine: Version: 18.09.9 API version: 1.39 (minimum version 1.12) Go version: go1.11.13 Git commit: 039a7df Built: Wed Sep 4 16:22:32 2019 OS/Arch: linux/amd64 Experimental: false ``` ### 查看docker容器信息 ```shell [root@master1 ~]# docker info Containers: 38 Running: 36 Paused: 0 Stopped: 2 Images: 12 Server Version: 18.09.9 Storage Driver: overlay2 Backing Filesystem: xfs Supports d_type: true Native Overlay Diff: true Logging Driver: json-file Cgroup Driver: cgroupfs Plugins: Volume: local Network: bridge host macvlan null overlay Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog Swarm: inactive Runtimes: runc Default Runtime: runc Init Binary: docker-init containerd version: 9754871865f7fe2f4e74d43e2fc7ccd237edcbce runc version: 09c8266bf2fcf9519a651b04ae54c967b9ab86ec init version: fec3683 Security Options: seccomp Profile: default Kernel Version: 3.10.0-957.el7.x86_64 Operating System: CentOS Linux 7 (Core) OSType: linux Architecture: x86_64 CPUs: 8 Total Memory: 15.63GiB Name: master1.itsapp.sustech.edu.cn ID: QAJD:SN3N:FQ7S:S2XJ:JKQZ:Z4IF:CU7E:63FL:JJQC:IPTJ:V7G5:KWUJ Docker Root Dir: /var/lib/docker Debug Mode (client): false Debug Mode (server): false Registry: https://index.docker.io/v1/ Labels: Experimental: false Insecure Registries: 1.1.1.1:5000 registry.apps.itsapp.sustech.edu.cn registry.kubeops.io:8096 127.0.0.0/8 Registry Mirrors: https://dockerhub.azk8s.cn/ https://docker.mirrors.ustc.edu.cn/ http://hub-mirror.c.163.com/ Live Restore Enabled: false Product License: Community Engine ``` ### 查看docker容器帮助 ```shell [root@master1 ~]# docker --help # 用法: docker 选项 命令 Usage: docker [OPTIONS] COMMAND A self-sufficient runtime for containers # 选项 Options: --config string Location of client config files (default "/root/.docker") -D, --debug Enable debug mode -H, --host list Daemon socket(s) to connect to -l, --log-level string Set the logging level ("debug"|"info"|"warn"|"error"|"fatal") (default "info") --tls Use TLS; implied by --tlsverify --tlscacert string Trust certs signed only by this CA (default "/root/.docker/ca.pem") --tlscert string Path to TLS certificate file (default "/root/.docker/cert.pem") --tlskey string Path to TLS key file (default "/root/.docker/key.pem") --tlsverify Use TLS and verify the remote -v, --version Print version information and quit # 管理命令 Management Commands: builder Manage builds config Manage Docker configs container Manage containers engine Manage the docker engine image Manage images network Manage networks node Manage Swarm nodes plugin Manage plugins secret Manage Docker secrets service Manage services stack Manage Docker stacks swarm Manage Swarm system Manage Docker trust Manage trust on Docker images volume Manage volumes # 命令集 Commands: attach Attach local standard input, output, and error streams to a running container build Build an image from a Dockerfile commit Create a new image from a container\'s changes cp Copy files/folders between a container and the local filesystem create Create a new container diff Inspect changes to files or directories on a container\'s filesystem events Get real time events from the server exec Run a command in a running container export Export a container\'s filesystem as a tar archive history Show the history of an image images List images import Import the contents from a tarball to create a filesystem image info Display system-wide information inspect Return low-level information on Docker objects kill Kill one or more running containers load Load an image from a tar archive or STDIN login Log in to a Docker registry logout Log out from a Docker registry logs Fetch the logs of a container pause Pause all processes within one or more containers port List port mappings or a specific mapping for the container ps List containers pull Pull an image or a repository from a registry push Push an image or a repository to a registry rename Rename a container restart Restart one or more containers rm Remove one or more containers rmi Remove one or more images run Run a command in a new container save Save one or more images to a tar archive (streamed to STDOUT by default) search Search the Docker Hub for images start Start one or more stopped containers stats Display a live stream of container(s) resource usage statistics stop Stop one or more running containers tag Create a tag TARGET_IMAGE that refers to SOURCE_IMAGE top Display the running processes of a container unpause Unpause all processes within one or more containers update Update configuration of one or more containers version Show the Docker version information wait Block until one or more containers stop, then print their exit codes # 可以运行 docker COMMAND --help来获取更多的帮助,比如: docker exec --help Run 'docker COMMAND --help' for more information on a command. ``` ## 2、查看镜像 ### 列出本地images ```shell [root@master1 ~]# docker images # 仓库 标签 镜像ID 创建时间 镜像大小 REPOSITORY TAG IMAGE ID CREATED SIZE quay.io/prometheus/node-exporter v1.0.1 0e0218889c33 12 months ago 26.4MB prom/node-exporter v1.0.0-rc.0 d2677e1c0dfc 16 months ago 24.3MB registry.kubeops.io:8096/rook/ceph v1.1.6 510cbf40e73e 20 months ago 974MB registry.kubeops.io:8096/k8s.gcr.io/node-problem-detector v0.8.0 414151c8babd 20 months ago 109MB registry.kubeops.io:8096/grafana/promtail v0.4.0 8bb6409f773d 20 months ago 138MB registry.kubeops.io:8096/quay.io/cephcsi/cephcsi v1.2.1 4ed9912287b5 21 months ago 984MB ``` ### 列出所有的镜像,含中间映像层 ```shell [root@master1 ~]# docker images -a REPOSITORY TAG IMAGE ID CREATED SIZE quay.io/prometheus/node-exporter v1.0.1 0e0218889c33 12 months ago 26.4MB prom/node-exporter v1.0.0-rc.0 d2677e1c0dfc 16 months ago 24.3MB registry.kubeops.io:8096/rook/ceph v1.1.6 510cbf40e73e 20 months ago 974MB registry.kubeops.io:8096/k8s.gcr.io/node-problem-detector v0.8.0 414151c8babd 20 months ago 109MB registry.kubeops.io:8096/grafana/promtail v0.4.0 8bb6409f773d 20 months ago 138MB registry.kubeops.io:8096/quay.io/cephcsi/cephcsi v1.2.1 4ed9912287b5 21 months ago 984MB ``` ### 只显示镜像ID ```shell [root@master1 ~]# docker images -q 0e0218889c33 d2677e1c0dfc 510cbf40e73e 414151c8babd 8bb6409f773d 4ed9912287b5 ``` ### 显示所有镜像ID, 含中间映像层 ```shell [root@master1 ~]# docker images -qa 0e0218889c33 d2677e1c0dfc 510cbf40e73e 414151c8babd 8bb6409f773d 4ed9912287b5 93a1a436c064 ``` ### 显示镜像摘要信息 ```shell [root@master1 ~]# docker images --digests REPOSITORY TAG DIGEST IMAGE ID CREATED SIZE quay.io/prometheus/node-exporter v1.0.1 sha256:cf66a6bbd573fd819ea09c72e21b528e9252d58d01ae13564a29749de1e48e0f 0e0218889c33 12 months ago 26.4MB prom/node-exporter v1.0.0-rc.0 sha256:36866cc8b9ff794cfff347205186d866acdb1643194b499f143f9e44a5dc07d3 d2677e1c0dfc 16 months ago 24.3MB registry.kubeops.io:8096/rook/ceph v1.1.6 sha256:13a45dfb1b808b9e0ce802b9315c3e4064a6d838df942df4182e0dfbdbe6ac48 510cbf40e73e 20 months ago 974MB ``` ### 显示镜像完整信息 ```shell [root@master1 ~]# docker images --no-trunc REPOSITORY TAG IMAGE ID CREATED SIZE quay.io/prometheus/node-exporter v1.0.1 sha256:0e0218889c33b5fbb9e158d45ff6193c7c145b4ce3ec348045626cfa09f8331d 12 months ago 26.4MB prom/node-exporter v1.0.0-rc.0 sha256:d2677e1c0dfce9825f72a5477b047e802850ce9640d481e082ac1079d856f825 16 months ago 24.3MB registry.kubeops.io:8096/rook/ceph v1.1.6 sha256:510cbf40e73eefdc89dace1ecc34090b36a5ec3c7f2f85cc3aa938494e35e78d 20 months ago 974MB registry.kubeops.io:8096/k8s.gcr.io/node-problem-detector v0.8.0 sha256:414151c8babd6aeb7ead3e99ad088d0f40fc9bf4660f3f3a9fda74b5b79c75ed 20 months ago 109MB ``` ### 显示指定镜像的历史创建 ```shell ## 完整命令: docker history -H ImageID # 参数:-H 镜像大小和日期,默认为true # --no-trunc 显示完整的提交记录 # -q 仅列出提交记录ID [root@master1 ~]# docker history -H 0e0218889c33 IMAGE CREATED CREATED BY SIZE COMMENT 0e0218889c33 12 months ago /bin/sh -c #(nop) ENTRYPOINT ["/bin/node_ex… 0B <missing> 12 months ago /bin/sh -c #(nop) USER nobody 0B <missing> 12 months ago /bin/sh -c #(nop) EXPOSE 9100 0B <missing> 12 months ago /bin/sh -c #(nop) COPY file:ee89f684ba9aba02… 19.7MB <missing> 12 months ago /bin/sh -c #(nop) ARG OS=linux 0B <missing> 12 months ago /bin/sh -c #(nop) ARG ARCH=amd64 0B <missing> 12 months ago /bin/sh -c #(nop) LABEL maintainer=The Prom… 0B <missing> 19 months ago /bin/sh -c #(nop) COPY dir:3bb083d91f284fba8… 1.58MB <missing> 19 months ago /bin/sh -c #(nop) MAINTAINER The Prometheus… 0B <missing> 20 months ago /bin/sh -c #(nop) CMD ["sh"] 0B <missing> 20 months ago /bin/sh -c #(nop) ADD file:12563da360d9eabd7… 5.2MB [root@master1 ~]# ``` ## 3、查看容器 ### 查看正在运行的容器 ```shell [root@master1 ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 55d1fccc8476 0e0218889c33 "/bin/node_exporter …" 6 weeks ago Up 6 weeks k8s_node-exporter_node-exporter-hm6wv_lens-metrics_469e10d7-bfa5-48a1-a84c-255bc4853204_0 1dc526d5cbe4 registry.kubeops.io:8096/gcr.io/google-containers/pause-amd64:3.1 "/pause" 6 weeks ago Up 6 weeks k8s_POD_node-exporter-hm6wv_lens-metrics_469e10d7-bfa5-48a1-a84c-255bc4853204_0 ``` ### 查看容器的ID及管理 - 正在运行的容器 ```shell [root@master1 ~]# docker ps -q 55d1fccc8476 1dc526d5cbe4 b61432b398ee 982156a53bd8 ``` - 结合筛选查看退出的容器的ID ```shell [root@master1 ~]# docker ps -q -f status=exited # 筛选的可用列表 -f, --filter=[] Filter output based on these conditions: - exited=<int> an exit code of <int> - label=<key> or label=<key>=<value> - status=(created|restarting|running|paused|exited|dead) - name=<string> a container's name # 默认为模糊查询 ^str查询以str开头的不生效,但是str$查询以str结尾的可以生效 - id=<ID> a container's ID # 默认为模糊查询 ^str查询以str开头的生效,但是str$查询以str结尾的不生效 - before=(<container-name>|<container-id>) - since=(<container-name>|<container-id>) - ancestor=(<image-name>[:tag]|<image-id>| ⟨image@digest⟩) - containers created from an image or a descendant. - volume=(<volume-name>|<mount-point-destination>) ``` - 一次性删除所有已经退出的容器 ```shell [root@zhangky ~]# docker rm $(docker ps -q -f status=exited) ``` - 一次性删除所有名称中包含cloud,并且标签为test的正在运行的容器 - 所以docker容器启动时增加标签很有必要!可以减少后续维护的操作 ```shell [root@zhangky ~]# docker rm -f $(docker ps -q -f name=cloud -f label=test -f status=running) ``` - 删除未使用的镜像 ```shell docker image rm $(docker images --format="{{.ID}}") ``` - 结合筛选、打印模板查看容器的指定信息 ``` # 查看已经退出的容器的id和名称,建议使用分隔符方便分割操作 [root@zhangky ~]# docker ps -a --format="{{.ID}},{{.Names}}" -f status=exited # 打印模板 --format="TEMPLATE" Pretty-print containers using a Go template. Valid placeholders: .ID - Container ID .Image - Image ID .Command - Quoted command .CreatedAt - Time when the container was created. .RunningFor - Elapsed time since the container was started. .Ports - Exposed ports. .Status - Container status. .Size - Container disk size. .Names - Container names. .Labels - All labels assigned to the container. .Label - Value of a specific label for this container. For example {{.Label "com.docker.swarm.cpu"}} .Mounts - Names of the volumes mounted in this container. ``` ### 查看正在运行+历史运行过的容器 ```shell [root@master1 ~]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 55d1fccc8476 0e0218889c33 "/bin/node_exporter …" 6 weeks ago Up 6 weeks k8s_node-exporter_node-exporter-hm6wv_lens-metrics_469e10d7-bfa5-48a1-a84c-255bc4853204_0 1dc526d5cbe4 registry.kubeops.io:8096/gcr.io/google-containers/pause-amd64:3.1 "/pause" 6 weeks ago Up 6 weeks k8s_POD_node-exporter-hm6wv_lens-metrics_469e10d7-bfa5-48a1-a84c-255bc4853204_0 ``` ### 显示运行容器总文件大小 ```shell [root@master1 ~]# docker ps -s CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES SIZE 55d1fccc8476 0e0218889c33 "/bin/node_exporter …" 6 weeks ago Up 6 weeks k8s_node-exporter_node-exporter-hm6wv_lens-metrics_469e10d7-bfa5-48a1-a84c-255bc4853204_0 0B (virtual 26.4MB) 1dc526d5cbe4 registry.kubeops.io:8096/gcr.io/google-containers/pause-amd64:3.1 "/pause" 6 weeks ago Up 6 weeks k8s_POD_node-exporter-hm6wv_lens-metrics_469e10d7-bfa5-48a1-a84c-255bc4853204_0 0B (virtual 742kB) ``` ### 显示最近创建容器 ```shell [root@master1 ~]# docker ps -l CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 55d1fccc8476 0e0218889c33 "/bin/node_exporter …" 6 weeks ago Up 6 weeks k8s_node-exporter_node-exporter-hm6wv_lens-metrics_469e10d7-bfa5-48a1-a84c-255bc4853204_0 ``` - 显示最近创建的3个容器 ```shell [root@master1 ~]# docker ps -n 3 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 55d1fccc8476 0e0218889c33 "/bin/node_exporter …" 6 weeks ago Up 6 weeks k8s_node-exporter_node-exporter-hm6wv_lens-metrics_469e10d7-bfa5-48a1-a84c-255bc4853204_0 1dc526d5cbe4 registry.kubeops.io:8096/gcr.io/google-containers/pause-amd64:3.1 "/pause" 6 weeks ago Up 6 weeks k8s_POD_node-exporter-hm6wv_lens-metrics_469e10d7-bfa5-48a1-a84c-255bc4853204_0 b61432b398ee 8bb6409f773d "/usr/bin/promtail -…" 2 months ago Up 2 months k8s_promtail_f2c-loki-promtail-jk2b8_kube-operator_1d38bb75-cc28-4514-bc4d-8da64fbae041_2 [root@master1 ~]# ``` ### 不截断输出全部信息 ```shell [root@master1 ~]# docker ps --no-trunc CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 55d1fccc84768d083a7fb408937aff610edc96d43489aab9c2d0d557de3e164a sha256:0e0218889c33b5fbb9e158d45ff6193c7c145b4ce3ec348045626cfa09f8331d "/bin/node_exporter --path.procfs=/host/proc --path.sysfs=/host/sys --path.rootfs=/host/root --collector.filesystem.ignored-mount-points=^/(dev|proc|sys|var/lib/docker|var/lib/containerd|var/lib/containers/.+)($|/) --collector.filesystem.ignored-fs-types=^(autofs|binfmt_misc|cgroup|configfs|debugfs|devpts|devtmpfs|fusectl|hugetlbfs|mqueue|overlay|proc|procfs|pstore|rpc_pipefs|securityfs|sysfs|tracefs)$" 6 weeks ago Up 6 weeks k8s_node-exporter_node-exporter-hm6wv_lens-metrics_469e10d7-bfa5-48a1-a84c-255bc4853204_0 ``` ### 使用容器ID获取容器的信息 ```shell [root@master1 ~]# docker inspect 55d1fccc8476 [ { "Id": "55d1fccc84768d083a7fb408937aff610edc96d43489aab9c2d0d557de3e164a", "Created": "2021-05-19T01:58:02.791178345Z", "Path": "/bin/node_exporter", "Args": [ "--path.procfs=/host/proc", "--path.sysfs=/host/sys", "--path.rootfs=/host/root", "--collector.filesystem.ignored-mount-points=^/(dev|proc|sys|var/lib/docker|var/lib/containerd|var/lib/containers/.+)($|/)", "--collector.filesystem.ignored-fs-types=^(autofs|binfmt_misc|cgroup|configfs|debugfs|devpts|devtmpfs|fusectl|hugetlbfs|mqueue|overlay|proc|procfs|pstore|rpc_pipefs|securityfs|sysfs|tracefs)$" ], ...... } ] ``` ### 获取正在运行的容器redis的IP ```shell docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' redis ```
zhangky
2022年1月11日 16:11
分享文档
收藏文档
上一篇
下一篇
微信扫一扫
复制链接
手机扫一扫进行分享
复制链接
关于 MrDoc
觅思文档MrDoc
是
州的先生
开发并开源的在线文档系统,其适合作为个人和小型团队的云笔记、文档和知识库管理工具。
如果觅思文档给你或你的团队带来了帮助,欢迎对作者进行一些打赏捐助,这将有力支持作者持续投入精力更新和维护觅思文档,感谢你的捐助!
>>>捐助鸣谢列表
微信
支付宝
QQ
PayPal
Markdown文件
分享
链接
类型
密码
更新密码