CN112286526B - 一种基于Gotty的Docker容器控制台访问方法及系统 - Google Patents

一种基于Gotty的Docker容器控制台访问方法及系统 Download PDF

Info

Publication number
CN112286526B
CN112286526B CN202011108350.1A CN202011108350A CN112286526B CN 112286526 B CN112286526 B CN 112286526B CN 202011108350 A CN202011108350 A CN 202011108350A CN 112286526 B CN112286526 B CN 112286526B
Authority
CN
China
Prior art keywords
gotty
container
service
starting
interface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011108350.1A
Other languages
English (en)
Other versions
CN112286526A (zh
Inventor
冯强中
范文斌
汪伟伟
牛洋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kedaduochuang Cloud Technology Co ltd
Original Assignee
Kedaduochuang Cloud Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kedaduochuang Cloud Technology Co ltd filed Critical Kedaduochuang Cloud Technology Co ltd
Priority to CN202011108350.1A priority Critical patent/CN112286526B/zh
Publication of CN112286526A publication Critical patent/CN112286526A/zh
Application granted granted Critical
Publication of CN112286526B publication Critical patent/CN112286526B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种基于Gotty的Docker容器控制台访问方法及系统,属于应用容器化部署技术领域,包括以下步骤:下载Gotty安装包;安装部署Gotty服务;启动Gotty服务;集成docker API接口;界面整合。本发明可实现Web UI页面访问容器控制台,结合Gotty服务直接进入到容器沙箱环境,用户不需要连接容器所在的物理机环境,降低了操作风险;基于Gotty实现容器控制台的Shell终端,可以在浏览器的终端中执行Linux常用指令,方便运维人员操作;集成docker API接口,可通过接口获取服务器上容器列表,操作人员只需选择相应的容器名称即可进入到容器的沙箱环境中,使用人员不需要用指令操作,降低操作人员的学习成本;集成Web UI界面和docker API接口到容器云平台系统上,简化用户操作。

Description

一种基于Gotty的Docker容器控制台访问方法及系统
技术领域
本发明涉及应用容器化部署技术领域,具体涉及一种基于Gotty的Docker容器控制台访问方法及系统。
背景技术
应用容器化部署已逐渐取代传统应用部署方式,容器化部署的服务处在独立沙箱环境中,当修改或查看容器内部文件时,需进去沙箱环境即控制台操作。
上述访问过程存在一定的缺陷和不足:
1、安全系数低,进去容器控制台时,需要先登录容器所在的物理机(或虚拟机)环境,登录服务器后可以操作服务器上所有容器,风险大;
2、学习成本高,维护/使用人员需要熟悉的掌握docker的命令,使用命令才能进入到指定的容器控制台中,增加操作人员的学习成本;
3、操作复杂,需要执行进入服务器,查找容器,进入容器控制台等一系列操作后才能进入控制台。
为解决上述问题,提出一种基于Gotty的Docker容器控制台访问方法及系统。
发明内容
本发明所要解决的技术问题在于:如何解决现有的Docker容器控制台访问方法存在的安全系数低、学习成本高等问题,提供了一种基于Gotty的Docker容器控制台访问方法。
本发明是通过以下技术方案解决上述技术问题的,本发明包括以下步骤:
S1:下载Gotty安装包
在Docker容器运行的所在服务器上下载gotty二进制安装包,将安装包移动至指定目录下并给予可执行权限;
S2:安装部署Gotty服务
编写gotty服务启动文件gotty.service,设置启动指令和启动端口,安装部署Gotty服务;
S3:启动Gotty服务
启动Gotty服务,并设置服务开机自启动;
S4:集成docker API接口
在容器云管理平台系统中集成docker API接口,服务通过接口查询主机上docker容器列表数据;
S5:界面整合
将Gotty服务终端页面集成到容器云管理平台的容器列表查询页面中,提供统一的容器控制台界面和快速按钮。
更进一步地,在所述步骤S1中,下载完成后把gotty的二进制安装包文件移动到/usr/bin/目录下并授予它可执行权限。
更进一步地,授权指令为chmod+x/usr/bin/gotty。
更进一步地,在所述步骤S2中,在启动文件中编写启动指令和启动端口,启动指令和端口设置为:
gotty-w-p 9081--title-format终端--permit-arguments docker exec-it。
更进一步地,设置完成后保存启动文件并把文件移动到/etc/systemd/system/目录下。
更进一步地,在所述步骤S4中,docker容器列表数据包括容器的ID和名称等信息。
本发明还提供了一种基于Gotty的Docker容器控制台访问系统,利用上述的访问方法访问容器控制台,包括:
安装包下载模块,用于在Docker容器运行的所在服务器上下载gotty二进制安装包,将安装包移动至指定目录下并给予可执行权限;
服务安装部署模块,用于编写gotty服务启动文件gotty.service,设置启动指令和启动端口,安装部署Gotty服务;
服务启动模块,用于启动Gotty服务,并设置服务开机自启动;
接口集成模块,用于在容器云管理平台系统中集成docker API接口,服务通过接口查询主机上docker容器列表数据;
界面整合模块,用于将Gotty服务终端页面集成到容器云管理平台的容器列表查询页面中,提供统一的容器控制台界面和快速按钮;
中央处理模块,用于向各模块发出指令,完成相关动作;
所述安装包下载模块、所述服务安装部署模块、所述服务启动模块、所述接口集成模块、所述界面整合模块均与所述中央处理模块电连接。
本发明相比现有技术具有以下优点:该基于Gotty的Docker容器控制台访问方法,可实现Web UI页面访问容器控制台,结合Gotty服务直接进入到容器沙箱环境,用户不需要连接容器所在的物理机(或虚拟机)环境,降低了操作风险;基于Gotty实现容器控制台的Shell终端(TTY),可以在浏览器的终端中执行Linux常用指令,方便运维人员操作;集成docker API接口,可通过接口获取服务器上容器列表,操作人员只需选择相应的容器名称即可进入到容器的沙箱环境中,使用人员不需要用指令操作,降低操作人员的学习成本和操作风险;集成Web UI界面和docker API接口到容器云平台系统上,可在UI页面上选择容器并进入容器控制台,简化用户操作,值得被推广使用。
附图说明
图1是本发明实施例一中的流程示意图;
图2是本发明实施例二中的实施流程示意图
具体实施方式
下面对本发明的实施例作详细说明,本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
如图1所示,本实施例提供一种技术方案:一种基于Gotty的Docker容器控制台访问方法,包括以下步骤:
S1:下载Gotty安装包
在Docker容器运行的所在服务器上下载gotty二进制安装包,将安装包移动至指定目录下并给予可执行权限;
S2:安装部署Gotty服务
编写gotty服务启动文件gotty.service,设置启动指令和启动端口,安装部署Gotty服务;
S3:启动Gotty服务
启动Gotty服务,并设置服务开机自启动;
S4:集成docker API接口
在容器云管理平台系统中集成docker API接口,服务通过接口查询主机上docker容器列表数据;
S5:界面整合
将Gotty服务终端页面集成到容器云管理平台的容器列表查询页面中,提供统一的容器控制台界面和快速按钮。
在所述步骤S1中,下载完成后把gotty的二进制安装包文件移动到/usr/bin/目录下并授予它可执行权限。
授权指令为chmod+x/usr/bin/gotty。
在所述步骤S2中,在启动文件中编写启动指令和启动端口,启动指令和端口设置为:
gotty-w-p 9081--title-format终端--permit-arguments docker exec-it。
设置完成后保存启动文件并把文件移动到/etc/systemd/system/目录下。
在所述步骤S4中,docker容器列表数据包括容器的ID和名称等信息。
本实施例还提供了一种基于Gotty的Docker容器控制台访问系统,利用上述的访问方法访问容器控制台,包括:
安装包下载模块,用于在Docker容器运行的所在服务器上下载gotty二进制安装包,将安装包移动至指定目录下并给予可执行权限;
服务安装部署模块,用于编写gotty服务启动文件gotty.service,设置启动指令和启动端口,安装部署Gotty服务;
服务启动模块,用于启动Gotty服务,并设置服务开机自启动;
接口集成模块,用于在容器云管理平台系统中集成docker API接口,服务通过接口查询主机上docker容器列表数据;
界面整合模块,用于将Gotty服务终端页面集成到容器云管理平台的容器列表查询页面中,提供统一的容器控制台界面和快速按钮;
中央处理模块,用于向各模块发出指令,完成相关动作;
所述安装包下载模块、所述服务安装部署模块、所述服务启动模块、所述接口集成模块、所述界面整合模块均与所述中央处理模块电连接。
实施例二
如图2所示,本实施例提供了一种基于Gotty的Docker容器控制台访问方法,包括以下步骤:
步骤1:在Docker容器运行的所在服务器上下载gotty二进制安装包,下载完成后把gotty的二进制安装包文件移动到/usr/bin/目录下并授予它可执行权限,授权指令为“chmod+x/usr/bin/gotty”,该指令是授予gotty指令的可操作权限,执行后可以在服务器终端上使用gotty命令行指令;
步骤2:编写gotty服务启动文件gotty.service,在启动文件中编写启动指令和启动端口,启动指令和端口设置为“gotty-w-p 9081--title-format终端--permit-arguments docker exec-it”,设置完成后保存文件并把文件移动到/etc/systemd/system/目录下,该指令是设置gotty服务的启动端口是9081,标题是“终端”,执行完成后可以在/etc/systemd/system/目录下查询到gotty.service文件;
步骤3:启动Gotty服务,并设置服务开机自启动;
步骤4:拷贝容器云管理平台后端服务包core.jar到服务器/root/目录下,Java-jar/root/core.jar运行服务,服务可通过发送HTTP请求调用Docker API接口查询主机上docker容器列表数据,包括容器的ID和名称等信息;
步骤5:将Gotty服务终端页面通过Iframe方式嵌套集成到容器云管理平台的容器列表查询页面中,在页面中添加提供统一的容器控制台界面和快速按钮,以便用户操作。
本实施例的实施原理如下:
Gotty是基于go语言的Linux终端Web共享工具,部署完成可提供Linux终端UI页面,在页面中可执行Shell指令。
通过调用Docker API接口查询容器的ID和名称,在进入容器控制台时,把容器的ID或名称信息以参数的形式传提给gotty服务的URI地址,即可进入到指定的容器内部控制台。
综上所述,上述实施例的基于Gotty的Docker容器控制台访问方法,可实现Web UI页面访问容器控制台,结合Gotty服务直接进入到容器沙箱环境,用户不需要连接容器所在的物理机(或虚拟机)环境,降低了操作风险;基于Gotty实现容器控制台的Shell终端(TTY),可以在浏览器的终端中执行Linux常用指令,方便运维人员操作;集成docker API接口,可通过接口获取服务器上容器列表,操作人员只需选择相应的容器名称即可进入到容器的沙箱环境中,使用人员不需要用指令操作,降低操作人员的学习成本和操作风险;集成Web UI界面和docker API接口到容器云平台系统上,可在UI页面上选择容器并进入容器控制台,简化用户操作,值得被推广使用。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (2)

1.一种基于Gotty的Docker容器控制台访问方法,其特征在于,包括:
S1:下载Gotty安装包
在Docker容器运行的所在服务器上下载gotty二进制安装包,将安装包移动至指定目录下并给予可执行权限;
S2:安装部署Gotty服务
编写gotty服务启动文件gotty.service,设置启动指令和启动端口,安装部署Gotty服务;
S3:启动Gotty服务
启动Gotty服务,并设置服务开机自启动;
S4:集成docker API接口
在容器云管理平台系统中集成docker API接口,服务通过接口查询主机上docker容器列表数据;
S5:界面整合
将Gotty服务终端页面集成到容器云管理平台的容器列表查询页面中,提供统一的容器控制台界面和快速按钮;
在所述步骤S1中,下载完成后把gotty的二进制安装包文件移动到/usr/bin/目录下并授予它可执行权限;授权指令为chmod+x/usr/bin/gotty;
在所述步骤S2中,在启动文件中编写启动指令和启动端口,启动指令和端口设置为:
gotty-w-p 9081--title-format终端--permit-arguments docker exec–it;
设置完成后保存启动文件并把文件移动到/etc/systemd/system/目录下;
在所述步骤S4中,docker容器列表数据包括容器的ID和名称信息。
2.一种基于Gotty的Docker容器控制台访问系统,其特征在于:利用如权利要求1所述的访问方法访问容器控制台,包括:
安装包下载模块,用于在Docker容器运行的所在服务器上下载gotty二进制安装包,将安装包移动至指定目录下并给予可执行权限;
服务安装部署模块,用于编写gotty服务启动文件gotty.service,设置启动指令和启动端口,安装部署Gotty服务;
服务启动模块,用于启动Gotty服务,并设置服务开机自启动;
接口集成模块,用于在容器云管理平台系统中集成docker API接口,服务通过接口查询主机上docker容器列表数据;
界面整合模块,用于将Gotty服务终端页面集成到容器云管理平台的容器列表查询页面中,提供统一的容器控制台界面和快速按钮;
中央处理模块,用于向各模块发出指令,完成相关动作;
所述安装包下载模块、所述服务安装部署模块、所述服务启动模块、所述接口集成模块、所述界面整合模块均与所述中央处理模块电连接。
CN202011108350.1A 2020-10-16 2020-10-16 一种基于Gotty的Docker容器控制台访问方法及系统 Active CN112286526B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011108350.1A CN112286526B (zh) 2020-10-16 2020-10-16 一种基于Gotty的Docker容器控制台访问方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011108350.1A CN112286526B (zh) 2020-10-16 2020-10-16 一种基于Gotty的Docker容器控制台访问方法及系统

Publications (2)

Publication Number Publication Date
CN112286526A CN112286526A (zh) 2021-01-29
CN112286526B true CN112286526B (zh) 2023-06-23

Family

ID=74497770

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011108350.1A Active CN112286526B (zh) 2020-10-16 2020-10-16 一种基于Gotty的Docker容器控制台访问方法及系统

Country Status (1)

Country Link
CN (1) CN112286526B (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111221665A (zh) * 2019-12-25 2020-06-02 中科曙光国际信息产业有限公司 基于浏览器的容器远程登陆方法和装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1933614A1 (de) * 1968-07-04 1970-01-29 Stewarts & Lloyds Ltd Verfahren und Geraet zum Ertasten von Gegenstaenden
CN108762893A (zh) * 2018-06-07 2018-11-06 郑州云海信息技术有限公司 一种浏览器连接Docker容器的方法、装置和存储介质
CN109117259B (zh) * 2018-07-25 2021-05-25 北京京东尚科信息技术有限公司 任务调度方法、平台、装置及计算机可读存储介质
CN110941474A (zh) * 2018-09-25 2020-03-31 北京京东尚科信息技术有限公司 Hadoop与Kubernetes系统共享计算资源的方法、系统、设备及存储介质
CN111158856A (zh) * 2019-12-20 2020-05-15 天津大学 一种基于Docker的容器可视化系统

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111221665A (zh) * 2019-12-25 2020-06-02 中科曙光国际信息产业有限公司 基于浏览器的容器远程登陆方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
一种基于docker集群的自动评价虚拟命令行实验终端构建及其在类Unix系统教学中的应用;颜晨阳;《科技风》(第17期);全文 *

Also Published As

Publication number Publication date
CN112286526A (zh) 2021-01-29

Similar Documents

Publication Publication Date Title
US9396260B2 (en) Managing multiple virtual world accounts from a single virtual lobby interface
US10447684B2 (en) Hosted application sandbox model
JP3518958B2 (ja) 拡張属性サポートを有する分散ファイル・システム・トランスレータ
EP2771803B1 (en) File fetch from a remote client device
EP2922273A1 (en) Resource sharing method, apparatus, system, and terminal, and resource management center
CN108289098B (zh) 分布式文件系统的权限管理方法和装置、服务器、介质
US8762507B1 (en) Method and system for managing an information technology system
US20160036818A1 (en) System and method for providing selective access to a redirected device
JP2009110214A (ja) 移動端末の位置情報に応じたデータへのアクセス制御システム及び方法
WO2011084383A2 (en) Adaptive virtual enviroment management system
MX2014005401A (es) Descubrimiento electronico de almacen cruzado.
CN110659100B (zh) 容器管理方法、装置和设备
US20130166503A1 (en) File cloud service apparatus and method
WO2011084385A2 (en) Adaptive virtual environment management system
US20080244514A1 (en) Scriptable object model for network based services
US9473461B2 (en) Transparent tunneling architecture for a secured database
US20170249170A1 (en) Home system establishing method
CN107894886B (zh) 一种运行代码的方法、装置及终端设备
CN112286526B (zh) 一种基于Gotty的Docker容器控制台访问方法及系统
AU2018203846A1 (en) Adaptive virtual environment management system
CN116566656A (zh) 资源访问方法、装置、设备及计算机存储介质
US20220345517A1 (en) Unified application management for heterogeneous application delivery
EP3754486B1 (en) Selectively installing applications based on manifest files
US10997002B2 (en) Quick actions
CN112702380A (zh) 私有云盘移动版

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant