title: 容器生态系统
date: 2017-12-08 22:02:16
tags: 容器
categories: 容器
容器核心技术
容器规范
Open Container Initiative(OCI),制定开放的容器规范
两个规范:runtime spec 和 image format spec
容器runtime&管理工具
容器的运行环境,容器只有在 runtime 中才能运行,主流容器:
runtime | 管理工具 | 备注 |
---|---|---|
lxc | lxd | Linux 上老牌的容器 runtime;Docker 最初的 runtime |
runc | docker engine | Docker 开发的容器 runtime;符合 oci 规范;现在 Docker 的默认 runtime |
rkt | rkt cli | CoreOS 开发的容器 runtime,符合 oci 规范,能够运行 Docker 的容器 |
Registry&&容器OS
- Registry:Docker Registry、Docker Hub、Quay.io
- 容器OS:CoreOS、atomic、ubuntu core
容器平台技术
容器编排引擎
高效的管理(容器管理、调度、集群定义和服务发现等)容器集群
- docker swarm : Docker 开发的容器编排引擎
- kubernetes : Google 领导开发的开源容器编排引擎,同时支持 Docker 和 CoreOS 容器
- mesos 是一个通用的集群资源调度平台,mesos 与 marathon 一起提供容器编排引擎功能
容器管理平台&&基于容器的PaaS
容器管理平台:支持多种编排引擎,抽象了编排引擎的底层实现细节
- Rancher
- ContainerShip
基于容器的PaaS:Deis、Flynn 和 Dokku
容器支持技术
- 容器网络:docker network、flannel、weave 和 calico
- 服务发现:etcd、consul 和 zookeeper
- 监控:docker ps/top/stats、stats API、sysdig、cAdvisor/Heapster 和 Weave Scope
- 数据管理:Flocker
- 日志管理:docker logs、logspout
- 安全性:OpenSCAP
运行容器——Hello World
-
环境:
- 管理工具:Docker Engine
- runtime:runc
- 操作系统:Ubuntu 16.04
-
安装&运行:
-
安装包,允许
apt
命令 HTTPS 访问 Docker 源$ sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ software-properties-common
-
添加 Docker 官方的 GPG
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
-
将 Docker 的源添加到 /etc/apt/sources.list
$ sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable"
-
安装Docker
$ sudo apt-get update $ sudo apt-get install docker-ce
-
运行httpd
$ sudo docker run -d -p 80:80 httpd
-
Docker适应非root用户
$ sudo groupadd docker $ sudo gpasswd -a ${USER} docker $ sudo service docker restart
NOTE
安装、使用Docker时注意权限是否足够
-
本文主要内容整理自每天5分钟玩转Docker容器技术