Docker 全部命令详解:从基础到高级
Docker 是现代软件开发和运维中不可或缺的工具,它通过容器化技术提供了轻量级的虚拟化解决方案。掌握 Docker 的所有命令是高效管理和运维容器的关键。本文将详细介绍 Docker 的所有命令,从基础的镜像和容器管理,到高级的网络和数据卷操作,帮助你全面掌握 Docker。
1. Docker 基础命令
1.1 全局命令
-
帮助:显示 Docker 的帮助信息,列出所有可用命令和选项。
bashdocker --help
-
版本:查看 Docker 的版本信息。
bashdocker --version
-
信息:显示 Docker 的系统信息,包括版本、资源使用情况等。
bashdocker info
2. 镜像管理命令
镜像是容器的基础,管理镜像的命令包括创建、查看和删除镜像。
-
拉取镜像:从 Docker Hub 或其他注册表拉取镜像。
bashdocker pull <镜像名称>:<标签>
-
列出镜像:查看本地存储的镜像列表。
bashdocker images
-
查看镜像详细信息:查看镜像的详细信息,如配置、层次结构等。
bashdocker inspect <镜像名称>:<标签>
-
删除镜像:删除本地镜像。确保镜像未被任何容器使用。
bashdocker rmi <镜像名称>:<标签>
-
构建镜像:根据 Dockerfile 文件构建镜像。
bashdocker build -t <镜像名称>:<标签> <路径>
-
标记镜像:为镜像打标签,用于重命名或分发。
bashdocker tag <源镜像>:<标签> <目标镜像>:<标签>
-
保存镜像到文件:将镜像保存为 tar 文件。
bashdocker save -o <文件名>.tar <镜像名称>:<标签>
-
加载镜像从文件:从 tar 文件加载镜像。
bashdocker load -i <文件名>.tar
3. 容器管理命令
容器是 Docker 中运行应用的基本单位。容器管理的命令包括创建、查看、启动和删除容器。
-
运行容器:从镜像创建并启动容器。
bashdocker run [OPTIONS] <镜像名称>:<标签>
-
列出容器:
-
仅运行中的容器 :
bashdocker ps
-
包括所有容器(包括已停止的) :
bashdocker ps -a
-
-
查看容器详细信息:查看容器的详细信息。
bashdocker inspect <容器ID或名称>
-
停止容器:停止一个正在运行的容器。
bashdocker stop <容器ID或名称>
-
启动容器:启动一个已停止的容器。
bashdocker start <容器ID或名称>
-
重启容器:重启一个容器。
bashdocker restart <容器ID或名称>
-
删除容器:删除一个或多个容器。
bashdocker rm <容器ID或名称>
-
查看容器日志:查看容器的日志输出。
bashdocker logs <容器ID或名称>
-
进入容器:以交互模式进入正在运行的容器。
bashdocker exec -it <容器ID或名称> /bin/bash
-
导出容器文件系统:将容器的文件系统导出到 tar 文件中。
bashdocker export -o <文件名>.tar <容器ID或名称>
-
导入容器文件系统:从 tar 文件中导入容器的文件系统。
bashdocker import <文件名>.tar
-
生成 Dockerfile:记录当前容器的状态,生成 Dockerfile。
bashdocker commit <容器ID或名称> <镜像名称>:<标签>
4. 数据卷管理命令
数据卷用于持久化和共享容器的数据。数据卷管理的命令包括创建、查看和删除数据卷。
-
创建数据卷:创建一个新的数据卷。
bashdocker volume create <卷名称>
-
列出数据卷:查看所有 Docker 数据卷。
bashdocker volume ls
-
查看数据卷详细信息:查看数据卷的详细信息。
bashdocker volume inspect <卷名称>
-
删除数据卷:删除数据卷。确保数据卷未被任何容器使用。
bashdocker volume rm <卷名称>
5. 网络管理命令
Docker 网络用于容器之间的通信。网络管理的命令包括创建、查看和删除网络。
-
列出网络:查看所有 Docker 网络。
bashdocker network ls
-
查看网络详细信息:查看网络的详细信息。
bashdocker network inspect <网络名称>
-
创建网络:创建一个新的 Docker 网络。
bashdocker network create <网络名称>
-
删除网络:删除 Docker 网络。确保网络未被任何容器使用。
bashdocker network rm <网络名称>
6. Docker Compose 命令
Docker Compose 是一个用于定义和运行多容器 Docker 应用的工具。通过 docker-compose.yml
文件配置服务,可以轻松管理复杂的应用。
-
启动服务 :根据
docker-compose.yml
文件启动服务。bashdocker-compose up
-
后台启动服务:在后台模式下启动服务。
bashdocker-compose up -d
-
停止服务:停止并删除服务容器。
bashdocker-compose down
-
查看服务日志:查看服务的日志输出。
bashdocker-compose logs
-
构建服务 :根据
docker-compose.yml
文件构建服务。bashdocker-compose build
-
查看服务状态:查看服务的状态。
bashdocker-compose ps
7. 高级命令
-
提交容器更改:将容器的当前状态提交为新镜像。
bashdocker commit <容器ID或名称> <镜像名称>:<标签>
-
推送镜像到注册表:将镜像推送到 Docker Hub 或其他镜像注册表。
bashdocker push <镜像名称>:<标签>
-
获取镜像历史:查看镜像的历史记录。
bashdocker history <镜像名称>:<标签>
-
查找镜像:从 Docker Hub 查找镜像。
bashdocker search <镜像名称>
结论
掌握 Docker 的所有命令是高效管理和运维容器的基础。通过熟练使用这些命令,你可以更好地创建、管理和调试 Docker 环境中的应用程序。希望本文的命令汇总能帮助你更深入地了解和运用 Docker。如果你有任何疑问或需要进一步的帮助,请随时提问!
这篇博客旨在帮助你全面了解 Docker 命令的使用。如果有特定的使用场景或命令需要进一步讲解,请随时与我联系!