Docker常用命令
什么是docker
-
docker镜像:一个只读的模板。镜像可以创建docker容器。一个镜像可以创建很多容器。镜像可以类比为类,容器就是一个一个的实例。
-
docker容器:独立运行一个或一组应用。容器使用镜像创建的运行实例。可以把容器看作是一个简易版的linux环境和运行在其中的应用程序。
-
docker仓库:集中存放镜像的场所。
-
镜像概念:

-
应用的一整套环境,不仅仅是代码,包括运行环境、配置环境、依赖包、内核等等。
-
Docker:打破了运行环境和配置问题的容器,方便做持续集成整体发布的容器虚拟化技术。
-
容器内的应用进程运行于宿主的内核,其本身没有内核,而且也没有进行硬件虚拟。
-
每个容器之间相互隔离。
docker run hello world干了什么?

docker常用命令
docker version:docker版本
docker info:docker信息描述
docker --help:帮助命令
镜像命令
docker images:列出本地主机上的镜像
docker images -a:列出本地主机上的所有镜像
docker images -q:显示当前镜像的id
docker images -qa:显示本地主机上的所有镜像的id
docker images --degests:显示镜像的摘要信息
docker images --degests --no-trunk:显示镜像的完整信息
docker search <镜像名字>:从docker hub上搜取镜像
docker search -s <star数> <镜像名字>:列出在docker hub上star数不小于指定的镜像
docker search --no-trunk <镜像名字>:显示完整的镜像描述
docker search --automated:只列出automated build类型的镜像
docker pull <镜像名字>等价于docker pull <镜像名字>:lastest:拉取镜像
docker rmi <镜像名字>等价于docker rmi <镜像名字>:latest:删除镜像
docker rmi -f <镜像名字>:强制删除镜像
docker rmi -f <镜像名字1> <镜像名字2>...:删除多个镜像
docker rmi -f $(docker images -qa):删除本地主机上的所有镜像
容器命令
docker run -it <镜像id> [--name <新名字>]:i表示交互,t表示伪终端。根据镜像创建容器并进入。
docker ps:列出目前正在运行的容器
docker ps -l:上一个运行的容器
docker ps -a:列出历史上所有运行过的容器
docker ps -n 3:列出上3次运行过的容器
docker ps -q:只显示容器编号
exit:停止容器并退出
ctrl+p+q:退出但不停止容器
docker start <容器id>:启动容器
docker restart <容器id>:重启容器
docker stop <容器id>:停止容器
docker kill <容器id>:强制停止容器
docker rm <容器id>:删除已停止的容器
docker rm -f <容器id>:强制删除容器
docker rm -f $(docker ps -qa):一次性删除多个容器
docker run -d <镜像名字>:后台运行容器
docker容器后台运行,必须要有一个前台进程。容器运行的命令,如果不是那些一直挂起的命令(如top、tail),就会自动退出。
docker logs -t <容器名字>:打印带时间的日志
docker logs -t -f <容器名字>:持续打印带时间的日志
docker logs -t -f --tail 3 <容器名字>:持续查看最后三行的带时间的日志
docker top <容器名字>:查看容器内运行的进程
docker inspect <容器名字>:查看容器的具体细节
docker attach <容器名字>:直接进入容器的终端,不会启动新的进程
docker exec -t <容器名字> ls -l /tmp:在容器中打开新的终端,并且可以启动新的进程。不进容器,直接返回结果
docker exec -t <容器名字> /bin/bash:进容器
docker cp <容器名> <路径名> <宿主机路径名>:拷贝容器中的文件到宿主机路径下