Docker指令大全!必备收藏!

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Docker指令大全!必备收藏!

一、基本命令

Docker的基本命令是Docker操作的基础,理解这些命令对于任何使用Docker的人来说都至关重要。这些命令涵盖了从容器的生命周期管理到镜像的操作等多方面的功能。在这一部分,我们将以表格的形式详细介绍各个基本命令及其用途。

命令 描述 示例
docker run 创建并启动一个容器 docker run -it ubuntu bash
docker ps 列出当前运行的容器 docker ps
docker ps -a 列出所有容器,包括未运行的 docker ps -a
docker stop 停止一个运行中的容器 docker stop [CONTAINER_ID]
docker start 启动一个已停止的容器 docker start [CONTAINER_ID]
docker restart 重启容器 docker restart [CONTAINER_ID]
docker rm 删除一个或多个容器 docker rm [CONTAINER_ID]
docker pull 从仓库拉取一个镜像 docker pull ubuntu
docker images 列出本地存储的镜像 docker images
docker rmi 删除一个或多个镜像 docker rmi [IMAGE_ID]
docker build 从Dockerfile构建镜像 docker build -t my-image:tag .
docker exec 在运行的容器中执行命令 docker exec -it [CONTAINER_ID] bash
docker logs 获取容器的日志 docker logs [CONTAINER_ID]
docker commit 从修改过的容器创建新的镜像 docker commit [CONTAINER_ID] new-image
docker inspect 获取容器或镜像的详细信息 docker inspect [CONTAINER_ID/IMAGE_ID]
docker network 管理Docker网络 docker network ls
docker volume 管理Docker卷 docker volume ls
docker info 显示Docker系统信息 docker info
docker version 显示Docker版本信息 docker version

二、镜像管理指令

在Docker中,镜像是容器运行的基础。掌握镜像管理命令对于有效使用Docker至关重要。以下表格详细介绍了与Docker镜像管理相关的主要命令,包括镜像的拉取、构建、列表展示、删除等操作。

命令 描述 示例
docker images 列出本地的所有镜像 docker images
docker pull 从镜像仓库拉取指定的镜像 docker pull ubuntu:18.04
docker push 将本地镜像推送到镜像仓库 docker push myrepo/myimage:tag
docker rmi 删除一个或多个本地存储的镜像 docker rmi ubuntu
docker build 使用Dockerfile构建新的镜像 docker build -t myimage .
docker history 显示镜像的历史信息 docker history myimage
docker inspect 显示镜像的详细信息 docker inspect ubuntu
docker tag 为镜像添加一个新的标签 docker tag ubuntu:18.04 myubuntu:latest
docker save 将镜像保存为tar归档文件 docker save myimage > myimage.tar
docker load 从tar归档文件加载镜像 docker load < myimage.tar
docker import 从归档文件创建镜像 docker import mycontainer.tar myimage
docker export 将容器快照导出为归档文件 docker export mycontainer > mycontainer.tar
docker create 创建一个新容器但不启动它 docker create ubuntu:18.04
docker commit 从容器创建镜像 docker commit mycontainer mynewimage
docker diff 显示容器文件系统的更改 docker diff mycontainer
docker search 在Docker Hub搜索镜像 docker search ubuntu

三、容器管理指令

容器是Docker的核心概念之一,有效管理容器对于任何Docker用户都是必备技能。以下是关于Docker容器管理的指令集合。这部分内容以表格形式展现,详细列出了与容器生命周期管理、操作、监控及其他相关功能的主要命令。

命令 描述 示例
docker run 创建一个新容器并运行一个命令 docker run -it ubuntu /bin/bash
docker ps 列出当前运行中的容器 docker ps
docker ps -a 列出所有容器,包括未运行的 docker ps -a
docker stop 停止一个或多个运行中的容器 docker stop [CONTAINER_ID]
docker start 启动一个或多个已停止的容器 docker start [CONTAINER_ID]
docker restart 重启一个或多个容器 docker restart [CONTAINER_ID]
docker kill 立即终止容器的运行 docker kill [CONTAINER_ID]
docker rm 删除一个或多个容器 docker rm [CONTAINER_ID]
docker exec 在运行的容器中执行命令 docker exec -it [CONTAINER_ID] /bin/bash
docker attach 连接到正在运行的容器 docker attach [CONTAINER_ID]
docker cp 从容器中复制文件/目录到主机,反之亦然 docker cp [CONTAINER_ID]:/path/to/file /dest
docker logs 获取容器的日志 docker logs [CONTAINER_ID]
docker inspect 获取容器的详细信息 docker inspect [CONTAINER_ID]
docker diff 检查容器中文件的更改 docker diff [CONTAINER_ID]
docker commit 从容器创建新的镜像 docker commit [CONTAINER_ID] new_image_name
docker pause 暂停容器中所有的进程 docker pause [CONTAINER_ID]
docker unpause 恢复容器中所有被暂停的进程 docker unpause [CONTAINER_ID]
docker port 显示容器的端口映射 docker port [CONTAINER_ID]
docker rename 重命名容器 docker rename [CONTAINER_ID] new_name
docker stats 显示一个或多个容器的实时资源使用情况 docker stats [CONTAINER_ID]
docker top 显示容器内运行的进程 docker top [CONTAINER_ID]
docker update 更新一个或多个容器的配置 docker update --cpu-shares 512 [CONTAINER_ID]
docker wait 阻塞直到容器停止,然后打印其退出代码 docker wait [CONTAINER_ID]
docker network connect 将容器连接到网络 docker network connect [NETWORK] [CONTAINER_ID]
docker network disconnect 将容器从网络中断开 docker network disconnect [NETWORK] [CONTAINER_ID]

四、数据管理与卷指令

在Docker中,数据管理和卷的概念对于持久化和数据共享至关重要。理解并掌握这些命令可以帮助用户有效地管理容器中的数据。以下是关于Docker数据管理与卷操作的指令集合,包括创建、管理卷,以及数据备份和迁移等功能。

命令 描述 示例
docker volume create 创建一个新的卷 docker volume create my_volume
docker volume ls 列出所有卷 docker volume ls
docker volume inspect 显示指定卷的详细信息 docker volume inspect my_volume
docker volume rm 删除一个或多个卷 docker volume rm my_volume
docker volume prune 删除所有未使用的卷 docker volume prune
docker cp 从主机复制文件到容器,或者从容器复制到主机 docker cp foo.txt mycontainer:/foo.txt
docker create 创建一个新容器,用于数据卷 docker create -v /dbdata --name dbstore training/postgres
docker run -v 在运行容器时挂载卷 docker run -d -P --name web -v /webapp training/webapp python app.py
docker run --mount 使用更详细的挂载配置运行容器 docker run --mount source=my_volume,target=/data my_image
docker service create 在服务中使用卷 docker service create --replicas=1 --name my_service --mount source=my_volume,target=/data my_image

五、网络配置指令

Docker的网络配置是容器化环境中的关键部分,它允许容器之间以及容器与外部世界的通信。理解并掌握网络配置指令对于确保容器应用的正确运行非常重要。以下是关于Docker网络配置的指令集合,这些指令涵盖了网络的创建、管理和调试等方面。

命令 描述 示例
docker network create 创建一个新的网络 docker network create --driver bridge my_network
docker network ls 列出所有网络 docker network ls
docker network rm 删除一个或多个网络 docker network rm my_network
docker network inspect 显示一个或多个网络的详细信息 docker network inspect my_network
docker network connect 连接一个容器到网络 docker network connect my_network my_container
docker network disconnect 断开容器与网络的连接 docker network disconnect my_network my_container
docker run --network 在特定网络下运行一个新的容器 docker run --network=my_network my_image
docker network prune 删除所有未使用的网络 docker network prune
docker service create 在特定网络下创建一个服务 docker service create --network my_network my_service

六、安全与维护指令

在Docker环境中,确保容器安全和进行有效的维护是非常重要的。了解和使用相关的安全与维护指令可以帮助用户保护其容器环境免受未授权访问和潜在威胁,同时确保系统的稳定运行。以下是Docker安全与维护相关的主要指令集合,包括日志记录、系统状态检查和安全扫描等功能。

命令 描述 示例
docker logs 获取容器的日志 docker logs [CONTAINER_ID]
docker stats 显示一个或多个容器的实时资源使用情况 docker stats
docker system df 显示Docker磁盘使用情况 docker system df
docker system prune 清理未使用的资源 docker system prune
docker system events 实时获取Docker系统的事件 docker system events
docker system info 显示系统范围的信息 docker system info
docker inspect 显示容器或镜像的详细信息 docker inspect [CONTAINER_ID or IMAGE_ID]
docker history 显示镜像的历史信息 docker history [IMAGE_ID]
docker checkpoint create 创建容器的检查点 docker checkpoint create [CONTAINER_ID] checkpoint01
docker checkpoint ls 列出容器的检查点 docker checkpoint ls [CONTAINER_ID]
docker checkpoint rm 删除容器的检查点 docker checkpoint rm [CONTAINER_ID] checkpoint01
docker scan 扫描镜像的安全漏洞 docker scan [IMAGE_ID]
docker trust 管理Docker内容信任 docker trust inspect [IMAGE_NAME]
docker secret create 创建一个新的秘密 docker secret create my_secret data.txt
docker secret ls 列出所有秘密 docker secret ls
docker secret rm 删除一个秘密 docker secret rm my_secret
docker swarm init 初始化一个新的Swarm集群 docker swarm init
docker swarm join 加入一个Swarm集群 docker swarm join [OPTIONS] HOST:PORT
docker swarm leave 离开一个Swarm集群 docker swarm leave

七、其他更多指令

Docker提供了一系列丰富的指令,用于处理各种高级场景和特定需求。了解这些更多的指令可以帮助用户更全面地利用Docker的功能,处理特殊的场景或进行高级配置。以下是一些不那么常用,但在特定情况下非常有用的Docker指令集合。

命令 描述 示例
docker attach 连接到正在运行的容器 docker attach [CONTAINER_ID]
docker commit 从修改过的容器创建新镜像 docker commit [CONTAINER_ID] mynewimage
docker diff 检查容器中文件的变化 docker diff [CONTAINER_ID]
docker events 从Docker守护进程获取实时事件 docker events
docker export 导出容器的文件系统为tar归档 docker export [CONTAINER_ID] > mycontainer.tar
docker import 从tar归档创建镜像 docker import myimage.tar
docker load 从tar归档加载镜像 docker load < myimage.tar
docker pause 暂停容器内所有进程 docker pause [CONTAINER_ID]
docker port 列出容器的端口映射 docker port [CONTAINER_ID]
docker rename 重命名容器 docker rename my_container my_new_container
docker save 保存一个镜像为tar归档 docker save myimage > myimage.tar
docker search 在Docker Hub搜索镜像 docker search ubuntu
docker top 显示容器内的运行进程 docker top [CONTAINER_ID]
docker unpause 恢复容器内所有被暂停的进程 docker unpause [CONTAINER_ID]
docker update 更新一个或多个容器的配置 docker update --cpu-shares 512 [CONTAINER_ID]
docker version 显示Docker版本信息 docker version
docker wait 阻塞直到容器停止,然后打印其退出代码 docker wait [CONTAINER_ID]
docker swarm 管理Swarm集群 docker swarm init
docker service 管理Swarm服务 docker service create [OPTIONS] IMAGE [COMMAND] [ARG...]
docker node 管理Swarm节点 docker node ls
docker stack 管理Docker栈 docker stack deploy -c docker-compose.yml mystack
docker secret 管理Docker秘密 docker secret create my_secret data.txt
docker config 管理Docker配置 docker config create my_config config.txt
docker plugin 管理Docker插件 docker plugin install rexray/ebs
docker trust 管理Docker内容信任 docker trust inspect [NAME]
docker context 管理Docker上下文 docker context create my_context
docker buildx 构建Docker镜像(实验性功能) docker buildx build --platform linux/amd64,linux/arm64 .

这些指令使用户能够处理更复杂的Docker任务,如Swarm集群管理、内容信任管理等。通过熟练掌握这些指令,用户可以充分利用Docker提供的高级功能和灵活性。

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
5月前
|
缓存 Linux Go
一次性构建出多CPU指令集的 Docker 镜像
本文介绍了使用 Docker Buildx 构建跨平台 Docker 镜像的流程。首先确保系统为 Ubuntu 22.04,安装 Docker 和相关依赖。然后配置 Docker Buildx,编写 Go 程序和 Dockerfile。接着,创建构建脚本 `build.sh` 自动化构建并推送镜像到 Docker Hub。运行此脚本将为不同平台(如 amd64, arm64)构建并推送镜像。最后,在 Docker Hub 可查看构建结果,并可在其他系统上测试镜像。
102 3
|
4月前
|
Ubuntu C++ Docker
Docker的基本指令和HTML/PYTHON/C++的简单创建示例
Docker的基本指令和HTML/PYTHON/C++的简单创建示例
|
2月前
|
Docker 容器
在Docker中,Dockerfile有哪些常见指令?
在Docker中,Dockerfile有哪些常见指令?
|
2月前
|
监控 Linux API
在Docker中,docker run指令执行后,生成了哪些进程?
在Docker中,docker run指令执行后,生成了哪些进程?
|
2月前
|
安全 Ubuntu Linux
在Docker中,镜像内没有curl,kill,ipconfig等指令如何添加?
在Docker中,镜像内没有curl,kill,ipconfig等指令如何添加?
|
2月前
|
Docker 容器
docker compose logs 常用指令
`docker compose logs`命令用于查看容器的输出日志。该命令提供多种选项,如以纯文本形式输出(`--no-color`)、隐藏日志前缀(`--no-log-prefix`)、显示时间戳(`-t, --timestamps`)等。用户可以指定时间范围(如`--since &quot;2024-08-06T13:11:10&quot;`和`--until &quot;2024-08-06T13:11:15&quot;`)或最近几分钟内的日志(如`--since 5m`)。使用`-f, --follow`可实时跟踪日志输出。注意:参数-h已废弃,应使用--help。
|
5月前
|
应用服务中间件 Linux nginx
Docker Compose 安装与使用(常用指令)
Docker Compose 安装与使用(常用指令)
694 0
|
5月前
|
Java Linux 虚拟化
Docker 部署spring-boot项目(超详细 包括Docker详解、Docker常用指令整理等)
Docker 部署spring-boot项目(超详细 包括Docker详解、Docker常用指令整理等)
1996 2
|
5月前
|
Docker 容器
docker 常用指令(启动,关闭,查看运行状态)
docker 常用指令(启动,关闭,查看运行状态)
72 1
|
Docker 容器
docker compose 常用指令
docker compose 常用指令