拉取自建鏡像倉庫中的鏡像時,可能會碰到因協議不同或者證書認證失敗而導致鏡像拉取失敗的問題。本文介紹在自建鏡像倉庫采用HTTP協議和使用自簽發(fā)證書的情況下,如何拉取自建鏡像倉庫中的鏡像來創(chuàng)建ECI實例或者鏡像緩存。
功能說明
拉取自建鏡像倉庫中的鏡像時,可能會碰到“ErrImagePull”告警事件,出現鏡像拉取失敗的問題。在保證ECI與鏡像倉庫網絡連通性的前提下,問題原因和解決方法如下:
場景 | 原因 | 解決方法 |
自建鏡像倉庫采用HTTP協議。 | ECI默認使用HTTPS協議拉取鏡像,協議不同導致鏡像拉取失敗。 | 配置ECI使用HTTP協議與鏡像倉庫進行交互。 |
自建鏡像倉庫采用HTTPS協議,但使用的證書是自簽發(fā)證書。 | 使用自簽發(fā)證書的情況下,拉取鏡像時無法通過證書認證,導致鏡像拉取失敗。 | 配置跳過證書認證。 |
配置說明
調用CreateContainerGroup接口創(chuàng)建ECI實例,或者調CreateImageCache接口創(chuàng)建鏡像緩存時,如果需要拉取自建鏡像倉庫的鏡像,且自建鏡像倉庫采用HTTP協議,或者使用自簽發(fā)證書時,需配置PlainHttpRegistry或InsecureRegistry參數來避免鏡像拉取失敗。
僅支持通過OpenAPI配置,控制臺暫不支持。
名稱 | 類型 | 示例值 | 描述 |
PlainHttpRegistry | String | "harbor***.pre.com,192.168.XX.XX:5000,reg***.test.com:80" | 取值為自建鏡像倉庫地址。 拉取采用HTTP協議的自建鏡像倉庫中的鏡像時,需配置該參數,使得ECI使用HTTP協議拉取鏡像,避免因協議不同而導致鏡像拉取失敗。 |
InsecureRegistry | String | "harbor***.pre.com,192.168.XX.XX:5000,reg***.test.com:80" | 取值為自建鏡像倉庫地址。 拉取使用自簽發(fā)證書的自建鏡像倉庫中的鏡像時,需配置該參數來跳過證書認證,避免因證書認證失敗而導致鏡像拉取失敗。 |
如果有多個容器的鏡像需要從不同的鏡像倉庫中拉取,支持填寫多個鏡像倉庫地址,各個地址之間采用半角逗號隔開,例如
harbor***.pre.com,192.168.XX.XX
。如果鏡像倉庫地址有端口號,則需要帶上端口號,例如:鏡像地址為
192.168.XX.XX:5000/nginx:latest
,則參數值需設置為192.168.XX.XX:5000
。
更多信息,請參見: