Docker扩展Cilium、Habitus、nginx-proxy、Notary介绍

以下为你介绍的Docker扩展都可用在Linux系统上:Cilium(基于 BPF 用于容器的关键网络技术)、Habitus(Docke 镜像的构建过程工具)、nginx-proxy(Docker 容器的自动化 nginx 代理)、Notary(控制数据权限的 Docker 项目)。

1、Cilium(基于 BPF 用于容器的关键网络技术)

Docker扩展Cilium、Habitus、nginx-proxy、Notary介绍

Cilium 是一个用于容器网络领域的开源项目,主要是面向容器而使用,用于提供并透明地保护应用程序工作负载(如应用程序容器或进程)之间的网络连接和负载均衡。

Cilium 在第 3/4 层运行,以提供传统的网络和安全服务,还在第 7 层运行,以保护现代应用协议(如 HTTP、gRPC 和 Kafka)的使用。 Cilium 被集成到常见的容器编排框架中,如 Kubernetes 和 Mesos。

Cilium 的底层基础是 BPF,Cilium 的工作模式是生成内核级别的 BPF 程序与容器直接交互。区别于为容器创建 overlay 网络,Cilium 允许每个容器分配一个 IPv6 地址(或者 IPv4 地址),使用容器标签而不是网络路由规则去完成容器间的网络隔离。它还包含创建并实施 Cilium 规则的编排系统的整合。

下载地址:https://github.com/cilium/cilium

2、Habitus(Docke 镜像的构建过程工具)

Docker扩展Cilium、Habitus、nginx-proxy、Notary介绍

Habitus 是一个独立的 Docke 镜像的构建过程工具,这是一个命令行工具,基于 Dockerfile 和 build.yml 构建 Docker 镜像。

Habitus 可将工作流添加到 Docker 镜像的构建过程中。这意味着你可以创建一个构建链,根据工作流生成最终的 Docker 镜像。如果你的代码是像 Java 或 Go 这样的编译语言,或者在构建过程中需要使用 SSH 密钥等私密文件,则此功能特别有用。

下载地址:https://github.com/cloud66-oss/habitus

3、nginx-proxy(Docker 容器的自动化 nginx 代理)

nginx-proxy设置一个运行nginx和docker-gen的容器。docker-gen为nginx生成反向代理配置,并在容器启动和停止时重新加载nginx。

用法:

运行:

$ docker run -d -p 80:80 -v /var/run/docker.sock:/tmp/docker.sock:ro jwilder/nginx-proxy

然后启动任何要使用env var代理的容器 VIRTUAL_HOST=subdomain.youdomain.com

$ docker run -e VIRTUAL_HOST=foo.bar.com  ...

被代理必须在容器暴露的端口被代理,或者通过使用EXPOSE在他们的指令Dockerfile或使用--expose标志docker run或docker create。

如果您的DNS设置为将foo.bar.com转发到运行nginx-proxy的主机,则请求将路由到具有VIRTUAL_HOST env var set的容器。

下载地址:https://github.com/jwilder/nginx-proxy

4、Notary(控制数据权限的 Docker 项目)

Docker扩展Cilium、Habitus、nginx-proxy、Notary介绍

Notary 包括服务器和客户端,用于运行和与受信任的集合进行交互。

Notary 的目标是使互联网更加安全,方便人们发布和验证内容。我们经常依靠 TLS 来保护与内部存在缺陷的 Web 服务器的通信,因为服务器的任何妥协都可以使恶意内容替代合法内容。

使用 Notary,发布商可以使用高度安全的密钥离线签名内容。一旦发布商准备提供内容,他们可以将其签名的受信任的集合推送到公证服务器。

消费者可以通过安全渠道获取发行商的公开密钥,然后可以与任何公证服务器或(不安全)镜像进行通信,只依靠发布者的密钥来确定收到的内容的有效性和完整性。

下载地址:https://github.com/theupdateframework/notary

注明

以上就是Docker扩展Cilium、Habitus、nginx-proxy、Notary的介绍内容,这些Docker扩展都能使用在Linux操作系统中。

栏目相关文章