Docker——简介
什么是Docker
Docker之父Solomon Hykes: Docker就好比传统的货运集装箱.
Docker是管理容器的引擎。
Docker为应用打包、部署平台,而非单纯的虚拟化技术
Docker的工作原理
Docker使用客户端 - 服务器(C/S)架构,使用远程API管理和创建Docker 容器。Docker 客户端与Docker 守护进程通信,后者负责构建,运行和分发Docker容器。Docker客户端和守护进程可以在同一系统上运行,也可以将Docker客户端连接到远程Docker守护进程。Docker客户端和守护进程使用REST API,通过UNIX套接字或网络接口进行通信。
Client
客户端通过命令行或其他工具与守护进程通信,客户端会将这些命令发送给守护进程,然后执行这些命令。命令使用Docker API,Docker客户端可以与多个守护进程通信。
Docker daemon
Docker守护进程(docker daemon)监听Docker API请求并管理Docker对象,如镜像,容器,网络和卷。守护程序还可以与其他守护程序通信以管理Docker服务。
Docker Host
Docker Host是物理机或虚拟机,用于执行Docker守护进程的仓库。
Docker Registry
Docker仓库用于存储Docker镜像,可以是Docker Hub这种公共仓库,也可以是个人搭建的私有仓库。使用docker pull或docker run命令时,将从配置的仓库中提取所需的镜像。使用docker push命令时,镜像将被推送到配置的仓库。
Docker与传统虚拟化相比:
安装配置Docker
官方站点:
https://docs.docker.com/
阿里云开源镜像站:
https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/stable/Packages/
参照配置方法:
https://developer.aliyun.com/mirror/docker-ce?spm=a2c6h.13651102.0.0.39fc1b11wX0PcJ
新建虚拟机server6,在server6上安装配置
https://developer.aliyun.com/mirror/centos?spm=a2c6h.13651102.0.0.12541b114mdF0o
docker info #查看docker的信息
每个 Pod 的网卡都是 veth 设备,veth pair 的另一端连上宿主机上的网桥。
由于网桥是虚拟的二层设备,同节点的 Pod 之间通信直接走二层转发,跨节点通信才会经过宿主机 eth0。
将bridge-nf-call-iptables 这个内核参数 (置为 1),表示 bridge 设备在二层转发时也去调用 iptables 配置的三层规则 (包含 conntrack),
在系统内核参数信息文件中设置
sysctl --system #刷新内核
doker search yakexi007 #搜索镜像源
doker pull yakexi007/game2048 #拉取镜像
docker ps #查看运行的容器