Py学习  »  docker

Docker 开源项目推荐

开源中国 • 6 年前 • 870 次点击  


应用容器引擎 Docker

https://www.oschina.net/p/docker

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app)。几乎没有性能开销,可以很容易地在机器和数据中心中运行。最重要的是,他们不依赖于任何语言、框架或包装系统。


Docker Machine

https://www.oschina.net/p/docker-machine

Docker Machine是一个简化Docker安装的命令行工具,通过一个简单的命令行即可在相应的平台上安装Docker,比如VirtualBox、 Digital Ocean、Microsoft Azure。


Go 编写的静态网站生成器 Hugo

https://www.oschina.net/p/gohugo

Hugo 是 Go 编写的静态网站生成器,速度快,易用,可配置。Hugo 有一个内容和模板目录,把他们渲染到完全的 HTML 网站。

Hugo 依赖于 Markdown 文件,元数据字体 。用户可以从任意的目录中运行 Hugo,支持共享主机和其他系统。

Hugo 只需要几分之一秒就可以渲染一个经典的中型网站,最好网站的每个部分渲染只需 1 毫秒。

Hugo 非常适合博客,文档等等网站的生成。

Hugo 当前提供 Windows,Linux,FreeBSD,NetBSD 和 OS X (Darwin) 的 x64, i386 和 ARM 架构的二进制预构建包。

Hugo 的源代码可以通过 Go 编译器工具链编译到任意地方运行,例如: DragonFly BSD, OpenBSD, Plan 9 和 Solaris。


Docker Swarm

https://www.oschina.net/p/docker-swarm

Docker Swarm是一个Dockerized化的分布式应用程序的本地集群,它是在Machine所提供的功能的基础上优化主机资源的利用率和容错服务。具体来说,Docker Swarm支持用户创建可运行Docker Daemon的主机资源池,然后在资源池中运行Docker容器。Docker Swarm可以管理工作负载并维护集群状态。

除了资源优化,Docker Swarm可以保证应用的高可用性和容错性。Docker Swarm会不断的检查Docker Daemon所在主机的健康状态。当某个主机不可用时,Swarm就会将容器迁移到新的主机上。

Docker Swarm的亮点之一是它可以在应用的生命周期内扩展,也就是说当应用从一个主机扩展到2个、20个或者200个的时候,用户可以保证接口的一致性。

同样,和Machine一样,Swarm的架构是可插拔的,系统已经包含一个默认的调度器。其它的厂商可以实现自己的调度器。


Docker Compose

https://www.oschina.net/p/docker-compose

Docker Compose 是 Docker 编排服务的一部分,Machine 可以让用户在其它平台快速安装Docker,Swarm 可以让 Docker 容器在集群中高效运转,而 Compose 可以让用户在集群中部署分布式应用。简单的说,Docker Compose 属于一个“应用层”的服务,用户可以定义哪个容器组运行哪个应用,它支持动态改变应用,并在需要时扩展。


Docker 应用构建管理工具 Fig

https://www.oschina.net/p/fig

Fig 主要用来跟 Docker 一起来构建基于 Docker 的复杂应用,Fig 通过一个配置文件来管理多个Docker容器,非常适合组合使用多个容器进行开发的场景。


容器网络管理 libnetwork

https://www.oschina.net/p/libnetwork

Libnetwork 提供一个原生 Go 实现的容器连接,是容器的网络。libnetwork 的目标是定义一个健壮的容器网络模型(Container Network Model),提供一个一致的编程接口和应用程序的网络抽象。

Libnetwork一开始的代码只是 libcontainer 和 Docker Engine 中网络部分代码的合并,Docker 官方的愿景是希望 libnetwork 能像 libcontainer 一样,成为一个多平台的容器网络基础包。

受之前的一个 GitHub issue 启 发,libnetwork 引入了容器网络模型(CNM)的概念,CNM 定义了三个新的术语,分别是网络沙箱、Endpoint、Network。网络沙箱 指的是在每一个容器中,将会有一个隔离的用于网络配置的环境。Endpoint 是一个网络接口,可用于某一网络上的交流。Network 是一个唯一的且可识别的 Endpoint组。

接下来,Docker 公司将会把 libnetwork 集成到 Docker Engine,并在 Docker CLI 中使用新的网络命令。



推荐阅读

Netflix 开源项目推荐

CSDN CODE 项目整体迁移到码云平台的公告

给 Android 开发者的 31 个 Pro 版进阶小贴士

TIOBE 9 月排行榜:Java,C,C ++ 三分天下何时休

点击“阅读原文”查看更多精彩内容


今天看啥 - 高品质阅读平台
本文地址:http://www.jintiankansha.me/t/YhW4mO20f4
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/3476
 
870 次点击