帮助命令
1、docker version
2、docker info
显示更详细的信息
3、docker help
获取帮助
镜像命令
1、docker images
列出本地的docker镜像
参数说明:
-a:列出本地所有的镜像(含中间映像层)
-q:只显示镜像id
--digests:显示镜像的摘要信息
--no-trunc:显示完成的镜像信息
2、docker search 某个镜像的名字
去dockerhub查询某个镜像
参数说明:
--no-trunc:显示完整的镜像描述
-f:过滤条件,例如 stars=300,会列出收藏星数大于300的镜像。
-f:过滤条件包括stars,is-official,is-automated
3、docker pull 某个镜像的名字[:tag]
下载镜像
注意:如果省略标签,则默认拉取标签为latest的
4、docker rmi 某镜像的id[:tag]
删除镜像
注意:如果省略标签,默认删除latest的
如果遇到这个问题,可以使用-f标签强制删除
docker rmi -f 镜像1 镜像2 ... 删除多个镜像
dockers rmi -f $(docker images -q) 删除所有镜像
容器命令
1、新建并启动容器
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
OPTIONS说明:
--name="容器新名字",为容器指定一个名称
-d:后台运行,并返回容器ID,即启动守护式容器
-i:以交互模式运行容器,通常与-t同时使用
-t:为容器重新分配一个伪输入终端,通常与-i同时使用
-P:随机端口映射
-p:指定端口映射,有以下四种形式:
ip:hostPort:containerPort
ip::containerPort
hostPort:containerPort
containerPort
2、列出所有当前正在运行的容器
docker ps [OPTIONS]
OPTIONS说明:
-a:列出当前所有正在运行的容器+历史上运行过的
-l:显示最近创建的容器
-n:显示最近n个创建的容器
-q:静默模式,只显示容器编号
--no-trunc:不截断输出
3、退出容器
exit :容器停止并退出
ctrl+P+Q:容器不停止退出
4、启动容器
docker start 容器名|容器id
dockers restart 容器名|容器id
5、停止容器
docker stop 容器名|容器id 关闭容器
docker kill 容器名|容器id 强制关闭容器
6、删除容器
docker rm 容器名|容器id 容器名|容器id ...
-f:强制删除
docker rm -f $(docker ps -a -q) 删除所有容器
docker ps -a -q | xargs docker rm 删除所有容器
7、【重要】
1、启动守护式进程
docker run -d 容器名|容器id
2、查看容器日志
dockers logs -f -t --tail n 容器名|容器id
-t:加入时间戳
-f:跟随最新的日志打印
--tail:数字 显示最后多少条
3、查看容器内的进程
docker top 容器名|容器id
4、查看容器内部细节
docker inspect 容器名|容器id
5、进入正在运行的容器并以命令行交互
docker exec -it 容器名|容器id bashshell
重新进入 docker attach 容器名|容器id
6、从容器内拷贝文件到宿主机上(容器停了保存的数据就没了)
docker cp 容器名|容器id:容器内路径 主机内路径
注意:docker run -d centos
,以后台模式启动一个容器,然后docker ps -a
,发现容器已经退出了。这是因为docker容器后台运行时,就必须有一个前台进程。如果容器运行的命令不是那些一直挂起的命令(比如top,tail),就会自动退出的。所以最佳的解决方案是:将要运行的程序以前台进程的形式运行