[發明專利]容器入口程序運行方法、系統、設備及存儲介質有效
| 申請號: | 201710613154.1 | 申請日: | 2017-07-25 |
| 公開(公告)號: | CN107368339B | 公開(公告)日: | 2020-06-12 |
| 發明(設計)人: | 陳宇量;吉志龍 | 申請(專利權)人: | 上海攜程商務有限公司 |
| 主分類號: | G06F9/445 | 分類號: | G06F9/445;G06F9/455;G06F9/54 |
| 代理公司: | 上海隆天律師事務所 31282 | 代理人: | 鐘宗;夏彬 |
| 地址: | 200335 上海市長*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 容器 入口 程序 運行 方法 系統 設備 存儲 介質 | ||
本發明提供了一種容器入口程序運行方法、系統、設備及存儲介質,該方法包括設定容器的入口路徑為一預設等待路徑;啟動容器;等待程序向一響應程序發送容器配置請求;響應程序獲取容器的啟動配置信息和入口信息;響應程序根據啟動配置信息對容器進行資源配置,并于資源配置完成后將入口信息返回至等待程序;等待程序根據入口信息調用并運行容器的入口程序。本發明在用戶不感知且對容器內部程序無修改的情況下,解決了現有技術中在依賴條件未滿足時運行入口程序出錯的問題;由響應程序進行資源配置,由等待程序設定資源配置完成后,調用并運行入口程序,使得容器在運行入口程序之前等待特定的資源配置,從而在滿足依賴條件之后再運行入口程序。
技術領域
本發明涉及云平臺容器技術領域,尤其涉及一種使得入口程序在滿足依賴條件之后再運行的容器入口程序運行方法、系統、設備及存儲介質。
背景技術
當前,以Docker為代表的容器技術帶來了整個基礎系統的技術革新,改變了開發、測試、交付和運行的流程和方式。一臺物理機或者虛擬機上可以運行多個容器,容器之間文件系統、網絡等資源互相隔離,該物理機和虛擬機也即宿主機。該技術使得應用以容器為單位進行調度、運行和擴縮容,調度和擴縮容甚至可以動態進行,與傳統的基于物理機和虛擬機的方式相比,周期大大縮短。
在容器應用過程中,啟動容器之后,其入口程序會立刻運行。然而,在真實使用場景中,常常遇到容器的入口程序的正確運行依賴于某些外部資源就緒的情況。例如,容器的入口程序需要訪問某項網絡服務,而容器的網絡配置需要配置外部的資源,如配置交換機端口等等。如果容器啟動后,立即運行入口程序,由于此時網絡配置還沒有完成,直接運行入口程序就會出錯。
發明內容
針對現有技術中的問題,本發明的目的在于提供一種容器入口程序運行方法、系統、設備及存儲介質,實現在用戶不感知且對容器內部程序無修改的情況下,使得容器在運行入口程序之前等待特定的資源配置,從而在滿足依賴條件之后再運行入口程序。
本發明實施例提供一種容器入口程序運行方法,所述方法包括如下步驟:
設定容器的入口路徑為一預設等待路徑;
啟動所述容器,讀取所述預設等待路徑處預存的等待程序;
將所述等待程序掛載至所述容器并運行所述等待程序;
所述等待程序向一響應程序發送容器配置請求,所述容器配置請求包括所述容器的識別信息;
所述響應程序根據所述容器的識別信息從宿主機獲取所述容器的啟動配置信息,并從鏡像倉庫中獲取所述容器的入口信息;
所述響應程序根據所述啟動配置信息對所述容器進行資源配置,并于資源配置完成后將所述入口信息返回至所述等待程序;
所述等待程序根據所述入口信息調用并運行容器的入口程序。
可選地,所述容器為docker容器,所述響應程序根據所述容器的識別信息獲取所述容器的啟動配置信息,并從鏡像倉庫中獲取所述容器的入口信息,包括如下步驟:
所述響應程序根據所述容器的識別信息從宿主機獲取所述容器的啟動配置信息和鏡像識別碼;
所述響應程序根據所述鏡像識別碼從鏡像倉庫中獲取對應的鏡像文件,并提取所述鏡像文件中的入口信息。
可選地,在docker run命令中將容器的入口路徑設定為所述預設等待路徑。
可選地,還包括如下步驟:
在docker run命令中增加volume參數,將宿主機的進程通信文件掛載到所述容器中。
可選地,所述響應程序位于所述容器外部,所述等待程序和所述響應程序基于所述進程通信文件中的進程通信協議進行通信。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海攜程商務有限公司,未經上海攜程商務有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710613154.1/2.html,轉載請聲明來源鉆瓜專利網。





