Docker 是一个开源的应用容器引擎,它允许开发者打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。Docker 使用概率最高的命令主要涉及镜像管理、容器创建和管理、网络配置、存储卷管理等。以下是详细介绍:
- 镜像管理
- docker pull:拉取镜像。
```
docker pull [选项] [Docker Registry 地址]/[仓库名]:[标签]
```
- docker images:列出本地存储的镜像。
```
docker images [选项]
```
- docker rmi:删除一个或多个镜像。
```
docker rmi [选项] [镜像1] [镜像2] ...
```
- docker search:搜索镜像。
```
docker search [选项] [关键词]
```
- 容器创建和管理
- docker run:创建并启动一个容器。
```
docker run [选项] [镜像名]:[标签] [命令]
```
- docker start:启动一个已经存在的容器。
```
docker start [容器ID或名称]
```
- docker stop:停止一个运行中的容器。
```
docker stop [容器ID或名称]
```
- docker restart:重启一个容器。
```
docker restart [容器ID或名称]
```
- docker rm:删除一个或多个容器。
```
docker rm [选项] [容器ID或名称] ...
```
- docker exec:在运行的容器中执行命令。
```
docker exec [选项] [容器ID或名称] [命令]
```
- 网络配置
- docker network:用于管理 Docker 网络。
```
docker network [选项]
```
- docker network create:创建一个新的网络。
```
docker network create [选项] [网络名称]
```
- docker network connect:将容器连接到一个网络。
```
docker network connect [选项] [网络名称] [容器ID或名称]
```
- docker network disconnect:将容器从网络断开连接。
```
docker network disconnect [选项] [网络名称] [容器ID或名称]
```
- 存储卷管理
- docker volume:用于管理 Docker 数据卷。
```
docker volume [选项]
```
- docker volume create:创建一个新的数据卷。
```
docker volume create [选项] [卷名称]
```
- docker volume inspect:显示关于卷的信息。
```
docker volume inspect [卷名称]
```
- docker volume rm:删除一个或多个数据卷。
```
docker volume rm [选项] [卷名称] ...
```
- 其他常用命令
- docker ps:列出当前运行的容器。
```
docker ps [选项]
```
- docker logs:获取容器的日志输出。
```
docker logs [选项] [容器ID或名称]
```
- docker commit:将容器的当前状态作为一个新的镜像保存。
```
docker commit [选项] [容器ID或名称] [镜像名称]:[标签]
```
- docker diff:显示容器内文件系统的更改。
```
docker diff [容器ID或名称]
```
- docker cp:从容器中复制文件或目录到本地文件系统。
```
docker cp [选项] [容器ID或名称]:[路径] [本地路径]
```