帮助启动类命令
启动docker
systemctl start docker
停止docker
systemctl stop docker
重启docker
systemctl restart docker
查看docker状态
systemctl status docker
开机自启
systemctl enable docker
查看docker概要信息
docker info
查看docker的总体帮助文档
docker --help
查看某一个命令的帮助文档
docker 具体命令 --help
镜像命令
查看本机中的镜像(不包含历史镜像)
docker images
查看本机中的镜像(包含历史镜像)
docker images -a
查看镜像ID(不包含历史镜像)
docker images -q
查看镜像ID(包含历史镜像)
docker images -aq
从远程镜像仓库中搜索镜像
docker search 镜像名称
# 例如搜索redis镜像
docker search redis
从远程镜像仓库中搜索镜像(只列出前n个)
docker search --limit n 镜像名称
# 例如只搜索排名前五的redis镜像
docker search --limit 5 redis
从远程镜像仓库中拉取镜像
docker pull 镜像名称[:TAG]
# 后面不添加TAG时,默认拉取最新版
# 例如拉取hello-world
docker pull hello-world
# 例如拉取MySQL5.7版本
docker pull mysql:5.7
查看镜像、容器、数据卷占用的空间
docker system df
删除镜像(如果当前镜像有容器实例则删除失败,使用下面强制删除)
docker rm 镜像ID
强制删除镜像
docker rm -f 镜像ID
同时删除多个镜像
docker rm -f 镜像名称[:TAG] 镜像名称[:TAG]
删除全部镜像
docker rm -f $(docker images -aq)
容器命令
启动容器
docker run 镜像名称
启动容器并给容器取个名字
docker run --name=取的名字 镜像名称
启动交互式容器,会开启容器的命令行
docker run -it 镜像名称 /bin/bash
后台运行容器并返回容器ID
docker run -d 镜像名称
查看正在运行的容器
docker ps
查看当前正在运行的容器和历史上运行过的容器
docker ps -a
查看正在运行的容器ID
docker ps -q
查看当前正在运行的容器ID和历史上运行过的容器ID
docker ps -aq
退出容器
使用docker run命令进入的容器使用exit退出,容器也会停止;使用ctrl+p+q退出,容器不会停止
启动已经停止的容器
docker start 容器ID或者容器名
重启容器
docker restart 容器ID或者容器名
停止容器
docker stop 容器ID或者容器名
强制停止容器
docker kill 容器ID或者容器名
删除已停止的容器
docker rm 容器ID
同时删除多个容器
docker rm -f $(docker ps -aq)
查看容器日志
docker logs 容器ID
查看容器内运行的进程
docker top 容器ID
查看容器内部细节
docker inspect 容器ID
进入正在运行的容器并以命令行的形式交互
# exec会在容器中打开一个新的终端,并且可以启动新的线程,使用exit退出时,容器不会停止
docker exec -it 容器ID /bin/bash
# attach会直接进入容器启动命令的终端(也就是使用docker run -it时的终端),不会开启新的线程,使用exit退出时,容器会停止
docker attach 容器ID
将容器内的文件拷贝到主机上
docker cp 容器ID:容器内文件的路径 目的主机路径
导出容器的内容为tar包
docker export 容器ID > 文件名.tar
将导出的tar包作为镜像导入docker中
cat 文件名.tar | docker import - 镜像名:镜像版本号(版本号也就是TAG)
挂载容器卷命令(默认容器可对容器卷中的内容可读可写)
docker run -it --privileged=true -v /主机路径:/容器内路径 镜像名字
挂载容器卷命令(容器对容器卷中的内容只读)
docker run -it --privileged=true -v /主机路径:/容器内路径:ro 镜像名字
容器继承其他的容器卷命令
docker run -it --privileged=true --volumes-from 父容器的name --name 容器名字 镜像名