[发明专利]一种基于Docker容器的应用服务访问系统及方法在审
申请号: | 201710763264.6 | 申请日: | 2017-08-30 |
公开(公告)号: | CN107395762A | 公开(公告)日: | 2017-11-24 |
发明(设计)人: | 涂霖;任治州;颜彬彬;张琦 | 申请(专利权)人: | 四川长虹电器股份有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;G06F9/455 |
代理公司: | 四川省成都市天策商标专利事务所51213 | 代理人: | 秦华云,吴瑞芳 |
地址: | 621000 四*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 docker 容器 应用服务 访问 系统 方法 | ||
技术领域
本发明涉及计算机网络与大数据应用技术领域,尤其涉及一种基于Docker容器的应用服务访问系统及方法。
背景技术
Docker是一种开源的应用容器引擎,通过它,服务开发者可以快速而方便的将他们的应用以及依赖包打包到一个可移植的容器中,容器本身就是一个精简的操作系统,包含了服务运行所需的基础环境。
在启动Docker容器时,Docker集群原生支持四种网络模式:bridge模式、container模式、host模式和none模式。Docker容器在进行网络连接时,只能实现在Docker容器内部的交互。也就是说,Docker中任一Docker容器,无法与Docker容器之外的外部网络进行交互,这就造成了基于Docker容器的应用无法对外部网络提供服务。传统的Docker容器的网络布局,一种要架构在容器所在宿主机的自身网络基础之上,通过占用不同的宿主机端口资源实现容器内部服务的对外提供;另外一种是架构在Docker集群的虚拟网络基础上的,通过分配不同的ip资源,根据容器内部服务的运行端口,实现服务功能的对外提供。而且,原生的Docker容器不能同时支持这两种网络架构,即是,Docker容器服务只能映射到宿主机IP+PORT和Docker集群虚拟网络IP+PORT两者中的一种。
此外,对于通过Docker容器发布的应用服务,如果需要查询其访问地址,还需要登录到该容器所在的宿主机通过命令的方式查询。目前,还没有一种全面而直观的方式,方便服务开发者查询服务的IP+PORT和域名,以及服务在不同网络节点的访问地址。
发明内容
针对现有技术存在的不足之处,本发明的目的在于提供一种基于Docker容器的应用服务访问系统及方法,通过为容器基础网络配置代理和映射的方式,解决了Docker容器服务在不同的网络节点的访问问题和容器服务访问的稳定性问题。
本发明的目的通过下述技术方案实现:
一种基于Docker容器的应用服务访问系统,包括容器服务部署模块、容器服务网络管理模块、容器服务DNS解析模块、容器服务访问方式收集模块、数据库、web展示模块和两个容器服务发现及负载均衡模块,所述容器服务部署模块用于应用服务的编译、打包、容器运行并通过对docker集群中宿主机的负载监控以及对容器的运行进行合理化调度;所述容器服务网络管理模块用于为容器服务部署模块中启动的服务容器分配基础的网络资源并对容器的网络进行管理;所述容器服务发现及负载均衡模块用于docker集群内所有容器的自动发现并实现容器中服务的代理和负载均衡;两个容器服务发现及负载均衡模块分别运行在拥有外网VIP和内网VIP的宿主机上,两个容器服务发现及负载均衡模块分别实现将服务代理到内网和外网;所述容器服务DNS解析模块用于服务容器docker集群内域名与docker集群虚拟网络IP+PORT立映射关系;所述容器服务访问方式收集模块用于采用了主动和被动两种方式对实现docker集群所有容器访问方式的收集并将所有访问方式存入数据库中;所述web展示模块用于集群中所有应用服务访问方式的全面而直观的展现;所述web展示模块还用于为用户修改已运行服务的访问方式提供入口。
一种基于Docker容器的应用服务访问方法,其方法步骤如下:
A、接受应用服务发布请求,根据服务源码地址和编译命令参数打包服务;
B、根据Dockerfile文件拉取定制基础镜像,生成可运行服务镜像,上传私有镜像库;
C、选择合适的Docker集群节点,运行服务容器;
D、将服务容器的Docker集群虚拟网络IP+PORT与Docker集群域名建立映射关系;
E、扫描集群内的所有容器,将服务访问方式存入数据库中。
为了更好地实现本应用服务访问方法,所述步骤D还包括如下方法:
将服务容器的Docker集群虚拟网络IP+PORT、Docker集群域名、内网VIP+PORT、内网域名、外网VIP+PORT、外网域名共同建立映射关系。
本发明较现有技术相比,具有以下优点及有益效果:
本发明通过为容器基础网络配置代理和映射的方式,解决Docker容器服务在不同的网络节点的访问问题和容器服务访问的稳定性问题,其网络节点可以推广应用到Docker集群虚拟网络环境、宿主机Docker局域网和外网。
附图说明
图1为本发明实施例一的应用服务发布访问方式生成流程图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川长虹电器股份有限公司,未经四川长虹电器股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710763264.6/2.html,转载请声明来源钻瓜专利网。