# 思维导图
1.3 Docker的三个基本概念
镜像(Image)
是一个只读的模板,类似于安装系统用到的那个iso文件,我们通过镜像来完成各种应用的部署
一个镜像也可以创建多个容器
容器(Container)
镜像类似于操作系统,而容器类似于虚拟机本身。它可以被启动、开始、停止、删除等操作,每个容器都是相互隔离的。
仓库(Repository)
存放镜像的一个场所,仓库分为公开仓库和私有仓库。最大的公开仓库Docker hub(hub.docker.com),国内公开仓库(dockerpool.com)
1.4 Docker常用命令
搜索镜像 docker search(关键字)
怎么搜索?比如搜索centos镜像
docker search centos
# 获取镜像 、下载镜像
docker pull
docker pull nickistre/centos-lamp # (斜杠后代表谁出版的)
# 查看镜像信息
dockers images
docker image -q # (-q加了参数就会查找出对应的位置)
docker inspect 镜像id # 镜像详细信息
docker rmi 镜像名称:标签 # 删除镜像
docker rmi
容器命令
查看本地容器状态
docker ps [option]
参数:-a ,all 查看所有的容器
-l 最近的,已创建的容器
容器的创建:
docker create
docker create [选项] 镜像 运行的程序
常见的option
-i: 让容器的输入保持打开状态
案例:docker create -it nickistre/contos-lamp /bin/bash
如果没有nickistre/contos-lamp 镜像,要用docker pull nickistre/contos-lamp 拉取
启动容器
docker start
docker start [option]容器的id/容器名字
创建并启动容器
docker run [option] image [COMMAND] 既能创建又能运行
也就是 create+start命令
-d 启动守护式
docker run -it --name mycentos_it centos /bin/bash
# 交互式(进入容器里面)
docker run -d --name mycentos_d centos /bin/bash # 守护式(在后台)
三种状态:UP:运行状态 Exited :退出状态 creat
退出方式
ctrl+P+Q 不会随着退出而退出 ,退出容器不停止
exit: 两种退出方式不同,(ctrl+d)退出停止容器,关闭容器
-q 查看所有的ID
停止容器运行:
docker stop
容器的进入
docker attach 进入一个已经在运行的容器
docker attach [OPTIONS] CONTAINER (容器、容器名字/ID)
docker ps 查看是否运行
docker exec 能够在宿主机上向运行的容器传输命令
用touch a.txt创建a.txt文件
ls查看是否创建成功
docker create -it --name mycentos nickistre/centos-lamp /bin/bash创建名为mycentos
docker start mycentos 开启运行mycentos
docker exec mycentos ls # 查看
不同点
- exec 命令是在容器中打开新的终端,并且可以启动新的进程。
- attach :直接进入容器并启动命令终端,不会进入新的进程。
- exec 命令进入容器后,可以进入终端或者直接输入命令并且把结果返回给宿主机 ,退出容器,容器还是在运行状态中,不会导致容器被停止。
4.attach 命令进入容器后,退出容器,容器状态是停止。
容器的删除
docker rm[-rf] 强制 删除容器/name
能够在宿主机上向运行的容器传输命令
一键停止
docker stop $(docker ps -aq) a是所有