命令概览
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/b40f6238ac23f910bc3db000dd328e47.png)
1.镜像命令
docker images
docker images -a
docker images -q
dokcer images -aq
docker rmi -f $(docker images -aq)
docker rmi -f 镜像id
docker rmi -f 镜像id1,镜像id2,镜像id3
docker search 镜像id或者镜像名称
docker search 镜像 -f STARS=300
docker search 镜像 -filter=STARS=300
docker pull 镜像id或者镜像名称
docker images --help
2.容器命令
镜像拉取本地之后,就可以操作容器了,当然镜像本地没有也会先检查有没有,没有则去远程仓库拉取
docker新建容器启动下面都是可选择参数:
docker run [可选参数] image
--name="Name"
-d
-it
-p
--ip 主机端口:容器端口
--主机端口:容器端口(常用)
--容器端口
-P
容器显示命令:
docker ps
-a
-n=?
-q
启动容器
docker run -it 容器id /bin/bash
docker exec -it 容器id /bin/bash
docker attach 容器id
docker exec -it 容器id1 ping 容器id2
docker start 容器id
docker restart 容器id
docker stop 容器id
docker kill 容器id
退出容器
exit
Ctrl + P + Q
删除容器
docker rm 容器id
docker rm -f 容器id
docker rm -f ${docker ps -aq}
docker ps -a -q| xargs docker rm
查看容器内的日志
docker logs -f -t --tail 10 容器id
docker logs 容器id
查看容器内进程
docker top 容器id
查看容器内详情
docker inspect 容器id
宿主机和容器之间拷贝
docker cp 容器id:/容器内路径 /目的主机路径
docker cp /目的主机路径 容器id:/容器内路径
eg: docke cp 容器id:/home/hello.java /home/
帮助命令
docker ps --help
docker rm --help
docker run --help
3.逻辑卷
挂载目录到宿主机
docker run -it -v 主机目录:容器目录 centos /bin/bash
eg:docker run -it -v /home/ceshi:/home centos /bin/bash
docker volume --help
docker volume ls
-v 容器内路径!
eg:docker run -d -P --name nginx01 -v /etc/nginx/ nginx
所有的docker容器内的卷,没有指定目录的情况下都是在/var/lib/docker/volumes/xxx
我们通过具名挂载可以方便找到一个卷,大多数情况下在使用的具名挂载
-v 容器内路径
-v 卷名:容器内路径
-v /宿主机路径:容器内路径
docker run -d -P --name nginx02 -v juming-nginx:/etc/nginx:ro nginx
docker run -d -P --name nginx02 -v juming-nginx:/etc/nginx:rw nginx
ro readonly
rw readwrite
4.网络命令
容器互联
docker run -d -P --name tomcat03 --link tomcat02 --link tomcat01 tomcat
docker network create --driver bridge --subnet 192.168.0.0/16 --gateway 192.168.0.1 mynet
docker run -d -P --name tomcat-net-01 --net mynet tomcat
docker run -d -P --name tomcat-net-02 --net mynet tomcat
docker exec -it tomcat-net-01 ping tomcat-net-02
查看mynet网络
docker network ls
docker network inspect mynet
可以通过容器实现和自定义网络(集群) 实现互通
docker network connect mynet tomcat01
5.其他命令
docker的常用命令
docker version
docker -v
docker info
docker stat
yum remove docker-ce docker-ce-cli containerd.io
rm -fr /var/lib/docker
docker 命令 --help