容器三大核心概念: 镜像, 容器, 仓库.
镜像:
镜像是一个独立的文件系统, 里面包含了运行环境和配置类似于一个小小型的 Linux 系统
镜像可由 dockerfile 来进行构建
镜像是静态的, 一经构建就无法更改
镜像是多层存储结构, 上一层以下一层为基础
容器:
容器是镜像的运行实体, 容器基于镜像创建
应用在容器中运行
容器也是多层存储结构, 叫容器存储层
也可以根据修改容器构建一个新的镜像
仓库:
作用: 用于存放镜像文件
要区别于仓库 register 注册服务器
先看一下 docker 命令的分布情况, 只要理解了 docker 三大核心概念基本就没有问题了.
与镜像有关的命令
docker tag 源镜像: 版本 : 为一个镜像打标签, 相当于一个镜像的新版本
docker history 镜像名称: 镜像版本: 查看镜像历史, 更迭变化
docker images: 列出全部镜像列表
docker rmi 镜像名称: 镜像版本: 删除镜像, 加 - f 参数强制删除镜像
docker pull 镜像名称[: 标签]: 从镜像仓库中拉取镜像或者仓库
docker push 镜像名称: 将一个镜像推送到镜像注册服务器
docker load : 从一个 tar 包中加载一个镜像
docker import : 从一个 tar 中加载内容, 从而创建一个镜像
docker load 用来载入镜像包, docker import 用来载入容器包, 但两者都会恢复为镜像; docker load 不能对载入的镜像重命名, 而 docker import 可以为镜像指定新名称.
与容器有关的命令
docker ps : 列出宿主主机上的容器
docker stop 容器名或 ID: 停止容器的运行, 加上 - t 参数可以让容器在停止前保存状态, 默认为 10 秒
docker start 容器名或 ID,docker restart 容器名或 ID: 开启容器, 重新启动容器
docker pause 容器名或 ID,docker unpause 容器名或 ID: 暂停容器中的所有进程, 撤销暂停
docker rm 容器 ID: 删除一个或多个容器,-f 参数强制删除一个容器,-l 参数删除指向的连接,-v 参数删除与该容器相关的卷
docker rename 旧名 新名称: 重命名容器
docker kill 容器 ID: 关闭一个运行中的容器 (包括进程和所有相关资源)
docker stats 容器 ID: 输出 (一个或多个) 容器的资源使用统计信息, 不写容器 ID, 默认输出所有运行中的容器资源使用情况
docker logs 容器 ID: 查看容器日志
docker top 容器 ID: 查看容器中正在运行的进程信息
docker diff 容器 ID: 查看容器中文件的变化情况, 是增加了文件, 还是改变了文件, 等等
docker inspect 容器 ID: 查看容器的具体配置信息, 配置位置等等信息
docker update 容器 ID: 更新容器的配置信息
docker exec -it 容器名 bash; 与容器进行交互, 也就是进入容器内执行一些命令
docker cp 本地文件路径 容器 ID 或名称: 容器路径: 将本机文件复制到容器中
docker container cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH: 将容器中的文件复制到本地机中
docker export 容器名或 ID: 导出容器内容为一个 tar 包
docker save : 将一个或多个镜像保存为 tar 文件, 例如: docker save -o n.tar nginx:v3
docker save 和 docker export 的区别: docker save 保存的是镜像(image),docker export 保存的是容器(container);
与仓库有关的命令
docker login -u 用户名 -p 密码; 登录到 docker 镜像仓库
docker logout; 从 docker 仓库中退出登录
docker search 镜像; 在 docker 仓库中搜索镜像