docker-常用命令整理
一、docker命令汇总
Docker环境信息 — docker [info|version]
容器生命周期管理 — docker [create|exec|run|start|stop|restart|kill|rm|pause|unpause]
容器操作运维 — docker [ps|inspect|top|attach|wait|export|port|rename|stat]
容器rootfs命令 — docker [commit|cp|diff]
镜像仓库 — docker [login|pull|push|search]
本地镜像管理 — docker [build|images|rmi|tag|save|import|load]
容器资源管理 — docker [volume|network]
系统日志信息 — docker [events|history|logs]
二、镜像相关
1.查看镜像列表
docker images
2.镜像搜索
docker search mysql
3.拉取镜像
docker pull 镜像名
docker pull 镜像名:Tag
4.删除镜像
sudo docker rmi -f 镜像名/镜像ID
5.保存及上传镜像文件
docker save > /opt/test.tar
docker load < /opt/test.tar
6.重命名镜像
#docker tag 镜像id 镜像名:标签
docker tag 172825a55619 test:1.2
三、容器相关
1.查看容器列表
docker ps
# 查看所有容器 -----包含正在运行 和已停止的
docker ps -a
2.创建容器
docker run -it -d --name 要取的别名 -p 宿主机端口:容器端口 -v 宿主机文件存储位置:容器内文件位置 镜像名:Tag /bin/bash
常用的参数:
-
–name:为容器指定名称
-
-it:启动一个交互型容器,此参数为我们和容器提供了一个交互shell
-
-d:创建后台型容器
-
-restart=always:容器退出后自动重启
-
-restart=on-failure❌容器退出时如果返回值是非0,就会尝试重启x次
-
-p x:y :主机端口:容器端口
-
-P:随机分配一个49000到49900的端口
8.-v:创建数据卷
-
-n :指定dns
-
-h : 指定容器的hostname
-
-e :设置环境变量
-
-m :设置容器使用内存最大值
-
–net: 指定容器的网络连接类型,支持 bridge/host/none/container
-
–link=x: 添加链接到另一个容器x
-
–expose=x: 开放端口x
这里docker create和docker run -it创建的容器都是交互型容器
3.停止容器
#正常关闭
docker stop 容器ID/容器名
#直接关闭
docker kill 容器ID/容器名
4.删除容器
#删除一个容器
docker rm -f 容器名/容器ID
#删除多个容器 空格隔开要删除的容器名或容器ID
docker rm -f 容器名/容器ID 容器名/容器ID 容器名/容器ID
#删除全部容器
docker rm -f $(docker ps -aq)
5.重命名一个容器
docker rename 容器ID 修改的名字
6.在 docker仓库中搜索镜像
docker search mysql
7.查看容器日志
docker logs 容器ID/容器名
#实时查看日志
docker logs -f 容器ID/容器名
#查看最后几行
docker logs --tail=10 容器ID/容器名
#查看日志产生的时间
docker logs -t 容器ID/容器名
8.查看容器进程
docker top 容器ID/容器名
9.查看容器配置信息
docker inspect 容器ID/容器名
10.进入容器
#进入后台型容器
docker exec -it 容器ID
docker exec -it 容器ID /bin/bash
#进入交互型容器
docker attch 容器ID/容器名