可以把 镜像和容器的关系换成类和对象的关系来作比较理解
docker info 查询docker的系统信息包括镜像和容器
docker images 查询所有镜像
docker search 镜像名字
docker pull imagename[:tag(指定版本)]不指定版本下载最新
docker rmi -f 容器id #删除单个
docker rmi -f 容器id 容器id 容器id #删除多个
docker rmi -f $(docker images -aq) 递归删除所有容器镜像
docker run imagename
docker rm 容器ID 删除指定容器,不加-f无法删除正在运行中的容器
docker rm -f $(docker ps -aq) 删除所有的容器
docker ps -aq | xargs docker rm 利用管道符删除所有容器
docker ps 命令 #列出当前正在运行的容器
-a #列出正在运行的容器,和历史运行过的容器
-n=? #例如 -n=1 #列出最近创建的一个容器
-q #只显示容器的编号
exit 容器停止且推退出
CTRL + P +Q 容器不停止退出
docker run -d imagename #后台启动docker
#若前天没有以一个进程,则上述后台进程会立马自杀
#docker 容器使用后台运行,就必须有一个前台进程,docker发现没有应用,就会自动停止
#nginx 容器启动过后发现自己没有提供服务,就会立即停止,就是没有程序了
docker logs -tf --tail 10 容器id #查看容器的10条日志
docker top 容器id
查看image的元数据
#命令
docker inspect imageid
#方式一
docker exec -it 容器id bashshell
-it #交互模式
#例如进去centos
docker exec -it imageid /bin/bash
#方法二
docker attach iamgeid
#区别
docker exec #进入容器后开启一个新的命令行
docker attach #进入容器正在执行的终端
docker cp imageid:/地址主机目标地址
#拷贝是一个手动的过程,未来我们使用-v卷的技术可以实现
docker stats
docker run -d --name master -p 3309:3306 -v /home/mysql/conf:/etc/conf.d/ -e MYSQL_ROOT_PASSWORD=123456 mariadb:latest
-d --name master -p 3309:3306 -v /home/mysql/conf:/etc/conf.d/ -e MYSQL_ROOT_PASSWORD=123456 mariadb:latest