2018-09-05
2018-09-05
Docker容器基础
[TOC]
1.概念
先进的软件管理容器引擎,统一文件系统
基本概念
镜像 Image
容器 Container
仓库 Repository
数据卷
2.结构
镜像:相当于java中的类
容器:相当于java中的对象
仓库:相当于属于镜像的maven仓库
数据卷: 容器间及本地共享资源等,可以快速引用
- 镜像可以增删,配置环境/资源/等等所有静态内容,但是不能运行
- 容器则相当于镜像的实例,可以创建/使用/停止/删除/暂停等,一个镜像可以实例化无数的容器,容器间相互独立隔绝
- 容器最好保持无状态,存储数据要独立于容器的数据卷等方式,这样容器消亡后,数据不会丢失.
- 仓库:存储镜像,每个镜像的每个版本都有自己的标签,可以通过标签来使用,和maven仓库同一概念
3.操作原理
CLI :命令窗口
RestAPI :Rest指令
DockerServer :Docker守护线程,核心程序
在CLI中使用Rest指令,即可轻松操纵Docker,简单方便
4.基本操作
[创建/运行/停止/暂停/删除]
- docker create
创建Container - docker start
运行Container - docker run
创建并运行Container - docker stop
停止Container - docker kill
不友好的停止Container - docker pause
暂停Container - docker rm
删除Container(需要停止Container) - docker rmi
删除Image镜像
[创建镜像]
- docker commit
容器提交为镜像 - docker build 构建镜像
[查看]
- docker ps 查看所有运行中的Container
- docker ps –a 查看所有Container(包含未运行)
- docker images 查看所有顶级镜像(top-leve)
- docker images –a 查看所有镜像
[移植复制]
- docker save
只对镜像生效,每一个层都保存了元数据,可以看到镜像历史版本 - docker export
排除元数据,创建一个tar文件,多层合一,没有历史版本 - docker history
查看镜像历史版本
[???骚操作]
- docker exec
在运行中的容器执行一个新进程 - docker inspect
or 提取镜像或容器最顶级的元数据
5.使用链接
详细基础指令操作连接,配图
详细Docker指令文档,配每个指令详情