1.Docker介绍
1.Docker介绍
Docker 是⼀个开源的应用容器引擎,可以实现虚拟化,完全采用“沙盒”机制,容器之间不会存在任何接口。
Docker 通过 Linux Container(容器)技术将任意类型的应用进行包装,变成一种轻量级、标准化、可移植、自管理的组件。在包装应用的同时可连带该应用的依赖和环境一并进行打包,所以可以将这种“包”移植到任意环境去运行,省去兼容性的问题。
2.Docker架构
1. 用docker pull 命令从 hub.docker.com 官网上下载 images (镜像)。
2. 可以用docker save 命令将镜像保存到本地 tar文件,也可以用docker load 命令将本地ta文件导入镜像。
3. 可以用docker build 构建 Dockerfile 镜像。
4. 可以用docker run 和 docker create 将镜像运行成 container (容器),容器内可以安装所需要的 APP。
5. 可以用docker commit/export 将容器做成镜像反复的使用。
6. 可以将自己制作的镜像发布到 hub.docker.com 网站,需要注册账号。
3.Docker 核心概念
1. 镜像(images):一个面向 docker 容器引擎的只读模板,也是容器的基础,类似于 iso 镜像文件。
2. 容器(container):基于镜像所创建的虚拟实例,相当于一个简易的 Linux 环境,可启停,且多个容器之间互相隔离。
3. 仓库(Repository):集中存放 docker 镜像的位置,可使用docker pull 或 push 命令下载或上传到私有或公有仓库。
4. 仓库注册服务器(registry):存放仓库的地方,如果没有私有仓库,则使用公共仓库 docker hub。
4.Docker特性
1.文件系统隔离:每个进程容器运行在⼀个完全独立的根文件系统里。
2.资源隔离:实现不同的容器的资源配额和调度,cgroup。
3.网络隔离:每个进程容器运行在自己的网络空间,拥有虚拟接口和 IP 地址。
4.日志记录:Docker将收集到和记录的每个进程容器的标准流 (stdout/stderr/stdin),用于实时检索或者批量检索。
5.变更管理:容器文件系统的变更可以提交到新的镜像中,并可重复使用以创建更多的容器。
6.交互式shell:Docker可以分配一个虚拟终端并且关联到任何容器的标准输出上,例如运行一个一次性交互shell。
命令表
2.安装Docker
安装模块
[root@docker0 ~]# cat << EOF | tee /etc/modules-load.d/k8s.conf
> overlay
> br_netfilter
> EOF
overlay
br_netfilter
加载内核模块