You need to enable JavaScript to run this app.
文档中心
容器服务

容器服务

复制全文
下载 pdf
创建 VCI 实例
创建实例并配置远端代理仓
复制全文
下载 pdf
创建实例并配置远端代理仓

弹性容器实例(VCI)支持镜像仓库 Mirror 配置,镜像拉取时会将请求的地址替换成 Mirror 仓库的地址拉取镜像。

背景信息

在用户业务中,会存在需要拉取境外镜像源、多云场景协作等需求。VCI 基于火山引擎镜像仓库(CR)的远端代理(Proxy cache)能力,提供镜像仓库 Mirror 配置功能,在使用公开的海外镜像场景中,可通过该能力直接拉取对应的镜像,无需更换镜像地址,满足用户的跨地域业务需求。

说明

CR 远端代理相关说明,请参见 远端代理仓

功能说明

VCI 通过 Annotation 方式提供 Mirror 配置能力。Annotation 说明如下:

  • Annotation Keyvci.volcengine.com/registry-mirror-config
  • Annotation Value
    • 参数值支持的格式为 JSON。
    • JSON 文件格式及参数说明如下:
      {
          "mirrors": {  // 远端代理仓域名配置。
              "docker.io": ["address1.cr.volces.com", "address2.cr.volces.com"],  // 按需配置,表示将 docker.io 远端仓镜像映射到指定的 CR 代理仓。填写多个代理仓域名时按前后顺序从代理仓中拉取镜像。
              "hub.byted.org": ["address2.cr.volces.com"],  // 按需配置,表示将 hub.byted.org 远端仓镜像映射到指定的 CR 代理仓。
              "*": ["default-address.cr.volces.com"]  // 按需配置,表示所有类型镜像,均映射到指定的 CR 代理仓。
          },
          "configs": {
              "address1.cr.volces.com": {  // 为指定的 CR 代理仓,配置访问策略。
                  "auth": {
                      "username": "xxx",  // CR 代理仓实例的登录用户名。
                      "password": "yyy" // CR 代理仓实例的登录密码,需要进行 Base64 编码后传入。
                  },
                  "tls": {
                      "insecure_skip_verify": true // 按需配置,表示登录 CR 代理仓实例时忽略证书校验。
                  }
              }
          }
      }
      

使用方法

下文以创建通用型 VCI 实例为例,详细的操作说明,请参见 指定容器 vCPU 和内存创建通用型实例

前提条件

代码示例

创建 VCI Deployment 的示例代码如下所示:

说明

Mirror 镜像仓库以外的配置相关说明,请参见 指定容器 vCPU 和内存创建通用型实例

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  replicas: 2
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      annotations:
        vke.volcengine.com/burst-to-vci: enforce  #强制使用 VCI
        vke.volcengine.com/preferred-subnet-ids: subnet-3tispp1nai**** #指定子网 ID,可指定同一个可用区内多个子网,多个子网之间用半角逗号(,)分隔
        vci.vke.volcengine.com/preferred-instance-family: vci.u1 #指定 VCI 的规格族
        vci.volcengine.com/registry-mirror-config: |
          {
              "mirrors": {
                  "docker.io": ["address1.cr.volces.com", "address2.cr.volces.com"], 
                  "hub.byted.org": ["address2.cr.volces.com"],
                  "*": ["default-address.cr.volces.com"]
              },
              "configs": {
                  "address1.cr.volces.com": {
                      "auth": {
                          "username": "demo-user",
                          "password": "*****************"
                      },
                      "tls": {
                          "insecure_skip_verify": true
                      }
                  }
              }
          }
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: docker.io/nginx:latest # 容器镜像的地址和版本,请配置为您自己的远端仓镜像地址
        ports:
        - containerPort: 80
        resources:
          requests:  #指定容器的 vCPU 和内存  
            cpu: "500m"      
            memory: "1024Mi"
          limits:
            cpu: "1"      
            memory: "2048Mi"
最近更新时间:2024.12.02 20:45:31
这个页面对您有帮助吗?
有用
有用
无用
无用