Docker学习四、相关命令总结
一、docker常用命令
1-1、docker服务相关
-
systemctl start docker(service docker start):启动docker服务
-
systemctl restart docker(service docker restart):重启docker服务
-
systemctl stop docker(service docker stop ):关闭docker服务
-
docker info:查看docker详细信息
-
docker version:查看docker版本
1-2、镜像管理相关
-
docker search 镜像名:搜索镜像
- -s N:筛选点赞数大于N的镜像
-
docker pull 镜像名:拉取镜像
-
docker images:查询本地镜像
- -a:列出本地所有镜像(包含中间镜像层)
- -q:只显示镜像
- --digests:显示镜像摘要信息
- --no -trunc:显示镜像完整信息
-
docker rmi 镜像名:删除镜像,删除多个时以空格分隔
- -f:强制删除
- docker rmi -f $(docker images -qa):组合命令,删除所有镜像
1-3、容器管理相关
1-3-1、容器管理基础命令
-
docker ps:查询正在运行的容器
- -a:查询所有容器
- -l:查询上一个运行的容器
- -n N:查询上N个运行的容器
- -q:只显示容器ID
- --no -trunc:显示完整信息
-
docker create -p 16379:6379 --name myRedis redis:3.0:使用redis:3.0镜像创建myRedis容器
- -p:指定端口映射,宿主机端口:容器端口,将容器端口映射为宿主机端口,例如16379:6379
- -P:随机端口映射
- --name:指定容器名称
-
docker start/stop 容器ID/名称:启动停止容器
-
docker kill 容器ID/名称:强制停止容器
-
docker rm 容器ID/名称:删除容器
- -f 强制删除
- 一次删除多个容器:
- docker rm -f $(docker ps -a -q)
- docker ps -a -q | xargs docker rm
-
docker run 容器ID/名称:创建并启动容器
- -d:后台运行并返回一个容器ID
- --restart=always:容器自动启动
- -h:设置容器主机名
- --add -host hostname:IP:给主机名设置IP
- -dns:设置容器DNS服务器
- --dns -search:DNS搜索设置
- --rm:服务停止时自动删除
1-3-2、容器管理重要命令
补充:
- docker容器想要在后台运行,必须要有一个前台进程,否则退出容器后容器就会关闭。
- docker run -d centos /bin/sh -c "while true;do echo hello wangdong;sleep 2;done":此命令会在前台一直输出日志。
-
docker logs 容器ID/名称:查看容器日志
- -t:加入时间戳
- -f:跟随最新的日志输出
- --tail N:显示最后N行日志
-
docker top 容器ID/名称:查看容器内部进程
-
docker inspect 容器ID/名称:查看容器的所有基本信息
-
docker exec 容器ID/名称 命令:在容器中执行命令
- docker exec -it 容器ID/名称 /bin/bash:进入容器的bash
- docker exec -it 容器ID/名称 ls /tmp:查看/tmp目录
-
退出容器操作:
- exit:容器停止并退出
- ctrl+P+Q:容器不停止退出
-
docker attach 容器ID/名称:重新进入容器
-
docker stats 容器ID/名称:查看容器占用的系统资源
-
docker cp 容器ID:容器路径 宿主机路径:将容器内部文件复制到宿主机中
-
docker commit -a "作者名" -m "描述信息" 容器ID 目标镜像名称:[标签名]:从容器中创建一个新的镜像
- -a:提交的镜像作者
- -m:提交时的说明文字
- -c:使用Dockerfile指令来创建镜像
- -p:在commit时,将容器暂停