微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

bara 基于Nginx和Docker的测试环境

程序名称:bara

授权协议: MIT

操作系统: 跨平台

开发语言: Ruby

bara 介绍

bara,即日语的バラ,也就是玫瑰。

bara一个基于@R_502_5171@和Docker的多版本程序同时在线的简易测试环境,只能单机使用,并且只是一个PoC而已,仅供参考。

简单来说,就是使用@R_502_5171@做反向代理,代理到后面的Docker容器,bara能动态创建Nignx配置文件,重启@R_502_5171@;而浏览器可以通过设置特殊header(认为一个字母v)来通过@R_502_5171@代理,访问指定的后面的Docker容器。

bara概览

bara架构很简单,一个@R_502_5171@服务器运行在host上,画图如下:

其背后用到的主要原理就是@R_502_5171@的proxy_pass以及map功能,@R_502_5171@会根据浏览器设置的自定义header(v)的值,根据map的映射关系,找到合适的upstream代理过去而已。

而bara,就是发挥了@R_502_5171@的强大功能,和Docker的灵活轻便,从而能在一台主机上,跑n个版本的应用程序,以方便测试。

bara还有一个概念就是@R_502_5171@的配置文件模板,@R_502_5171@的配置文件是根据这个模板动态创建的,这个模板如果有{{upstream}}占位符,则会被bara系统自动根据运行中的容器来替换为一个upstream列表。

bara 官网

https://github.com/liubin/bara

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐