[发明专利]一种Web访问Docker容器的方法及系统有效
| 申请号: | 201710755959.X | 申请日: | 2017-08-29 |
| 公开(公告)号: | CN107493344B | 公开(公告)日: | 2020-07-28 |
| 发明(设计)人: | 张烨 | 申请(专利权)人: | 浪潮云信息技术股份公司 |
| 主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L29/06 |
| 代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 姜明 |
| 地址: | 250100 山东省济南市高*** | 国省代码: | 山东;37 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 web 访问 docker 容器 方法 系统 | ||
本发明公开了一种Web访问Docker容器的方法及系统,属于云计算技术领域,所要解决的技术问题为:解决现有技术中Web远程访问Docker容器仍需创建单独SSH服务进行远程登录访问,需配置用户名、密码等参数,远程访问过程繁琐的问题。采用的技术方案为:方法包括以下步骤:用户在Web页面找到要访问的Docker容器发起访问请求;访问支持组件判断用户权限,若有权限,则创建Docker容器访问的令牌,并将令牌返回给用户;访问支持组件获取Docker容器ID以及所在宿主机IP地址,生成Docker容器接口的URL地址;Web访问组件验证令牌,通过验证则通过Docker容器接口的URL地址建立Websocket连接;通过Web访问组件打开Docker容器含有控制台终端的Web页面。本发明无需启动sshd进程,仍然实现了对Docker容器接入的权限控制。
技术领域
本发明涉及云计算技术领域,具体地说是一种Web访问Docker容器的方法及系统。
背景技术
Docker(Docker是PaaS提供商dotCloud开源的一个基于LXC的高级容器引擎,源代码托管在Github上,基于go语言并遵从Apache2.0协议开源)是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。它可以类比于虚拟机,但本身并不是虚拟机。
远程访问容器功能的传统实现方式是基于虚拟机的思想,在每个容器中启动一个sshd进程。由于容器PID为1的进程的特殊性,为了保证容器不停,容器的Entrypoint需要设置为类似于Supervisord这样的进程管理程序。用户通过SSH的客户端软件指定容器的IP远程连接到容器,这种传统方式需要修改容器的启动参数,在容器内运行sshd进程,给容器配置用户名、密码并设置可外部访问的IP地址。过程十分繁琐,并占用Docker宿主机资源,且客户端访问方式不如Web访问方式简便灵活。
随着技术的不断发展,技术人员研究出了基于Web端SSH登录方式,这种方式代替了传统使用客户端软件实现SSH的远程登录,具有便于实现和用户操作的优点,但基于Web端SSH登录方式还具有如下缺点:1、用户可远程访问的主机受到前期Service配置的限制,无法随意地远程登录任意主机,灵活性差;2、仅支持远程主机的登录,不支持直接登录Docker容器,因此,针对此问题,如专利201610169619.4,名称为“一种Web端登录Docker容器的方法和装置”,本发明采用的技术方案为:方法包括:接收携带有待访问的远程主机的主机地址和待访问的容器ID的URL请求;解析所述URL请求得到所述主机地址和所述容器ID;根据所述主机地址和所述容器ID建立服务,调用所述服务执行SSH远程登录命令;以使所述远程主机通过SSH服务通过端口监听到所述SSH远程登录命令,并解析所述SSH远程登录命令得到所述容器ID,生成并执行携带有所述容器ID的Docker容器登录命令;本发明是通过在远程主机中创建独立的SSH服务,根据SSH远程登录命令解析获取容器ID,进而动态生成Docker容器登录命令,直接实现登录指定Docker容器;但是还存在如下问题:虽能够通过Web直接登录Docker容器,但是仍然需要创建SSH服务、启动SSH进程并执行SSH远程登录命令,通过解析SSH远程登录命令得到容器ID生成并执行携带有容器ID的Docker容器登录命令,并且还需设置用户名参数,预先配置密码验证回调函数为不需验证密码,以便实现无密码登录,实现方式较繁琐,不利于降低配置难度,节省资源。
发明内容
本发明的技术任务是提供一种Web访问Docker容器的方法及系统,来解决现有技术中Web远程访问Docker容器仍需创建单独的SSH服务进行远程登录访问,需配置用户名、密码等参数,远程访问过程相对繁琐,占用Docker宿主机资源的问题。
本发明的技术任务是按以下方式实现的,
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮云信息技术股份公司,未经浪潮云信息技术股份公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710755959.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于射频技术设计的金融管理服务系统
- 下一篇:一种无人机快递系统





