最近在学习微服务时开始接触 Docker,整理了一份 最常用的 Docker 命令笔记,方便自己复习。
一、Docker 是什么 ?
Docker 是一个 容器化平台,可以把应用程序和运行环境一起打包成一个 容器(Container) ,从而解决:环境不一致、部署复杂、运维成本高等一系列问题
简单理解:
| 技术 | 类比 |
|---|---|
| 镜像(Image) | 安装包 |
| 容器(Container) | 运行起来的软件 |
| Docker | 运行容器的平台 |
流程一般是:
二、Docker 帮助命令
查看 Docker 所有命令:docker --help
查看某个命令的帮助:docker 命令 --help
例如:docker run --help
三、镜像相关命令
1 查看镜像
docker images
示例输出:
参数说明:
| 参数 | 说明 |
|---|---|
| REPOSITORY | 镜像名称 |
| TAG | 版本 |
| IMAGE ID | 镜像ID |
| SIZE | 镜像大小 |
2 搜索镜像
docker search nginx
示例:docker search mysql
分享一下自己用的镜像源
毫秒镜像 - 国内Docker镜像加速下载平台 | 容器镜像仓库极速拉取服务
3 下载镜像
docker pull 镜像名
例如:docker pull nginx
下载指定版本:docker pull mysql:8.0
4 删除镜像
删除指定镜像:docker rmi 镜像ID
删除多个镜像:docker rmi 镜像ID1 镜像ID2
强制删除:docker rmi -f 镜像ID
四、容器相关命令
1 运行容器
最常用命令:docker run [OPTIONS] image
例如运行 nginx:docker run -d -p 80:80 nginx
参数说明:
| 参数 | 作用 |
|---|---|
| -d | 后台运行 |
| -p | 端口映射 |
| --name | 容器名称 |
示例:docker run -d -p 8080:80 --name mynginx nginx
含义:宿主机端口8080 映射到 容器80端口
2 查看运行中的容器
docker ps
示例:
3 查看所有容器
包括停止的容器:docker ps -a
4 启动容器
docker start 容器ID
例如:docker start c5a7290d5071
5 停止容器
docker stop 容器ID
例如:docker stop c5a7290d5071
6 重启容器
docker restart 容器ID
7 删除容器
docker rm 容器ID
删除多个:docker rm 容器ID1 容器ID2
强制删除(慎用):docker rm -f 容器ID
五、容器日志命令
查看容器日志:
docker logs 容器ID
实时查看:docker logs -f 容器ID
六、进入容器
进入运行中的容器:docker exec -it 容器ID /bin/bash
例如:docker exec -it c5a7290d5071 /bin/bash
参数说明:
| 参数 | 含义 |
|---|---|
| -i | 交互模式 |
| -t | 终端 |
| /bin/bash | 进入 bash |
七、查看容器信息
查看容器详细信息:docker inspect 容器ID
八、查看容器资源占用docker stats
可以查看:CPU、内存、网络等
九、Docker 常用命令总结
| 功能 | 命令 |
|---|---|
| 查看镜像 | docker images |
| 搜索镜像 | docker search |
| 下载镜像 | docker pull |
| 删除镜像 | docker rmi |
| 运行容器 | docker run |
| 查看容器 | docker ps |
| 启动容器 | docker start |
| 停止容器 | docker stop |
| 删除容器 | docker rm |
| 查看日志 | docker logs |
| 进入容器 | docker exec |
| 查看资源 | docker stats |