使用VPC安全构建模式构建容器镜像

重要

本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。

容器镜像服务ACR提供了VPC安全构建模式,支持在云上VPC或云下IDC机房(通过高速通道打通到云上VPC)内自建GitLab(或Maven仓库等其它内网服务),且不露出公网访问入口。本文介绍如何使用ACR VPC安全构建模式来进行镜像构建。

前提条件

  • 已创建容器镜像服务企业版实例。具体操作,请参见使用企业版实例推送和拉取镜像

  • 已在企业版实例对应地域云上VPC或云下IDC机房自建GitLab服务。如果在云上VPC自建的GitLab服务通过ECS IP访问,则ECS所在的安全组入方向需要放行100.104.0.0/16对GitLab服务的访问;如果自建的GitLab服务通过SLB访问,则无安全组要求。

  • 在云下IDC机房模式下,要求IDC机房的网段不能与反向访问地址段(100.104.0.0/16)冲突,且需要在高速通道的VBR和IDC机房分别配置反向访问地址段(100.104.0.0/16)的返程路由条目。关于高速通道和VBR的更多信息,请参见什么是高速通道什么是边界路由器

  • 已创建VPC和VSwitch,且必须在支持安全构建模式的可用区内。ACR支持该模式的可用区如下表所示:

    云服务

    地域

    支持的可用区

    公共云

    北京

    • cn-beijing-c

    • cn-beijing-d

    • cn-beijing-e

    • cn-beijing-f

    • cn-beijing-i

    • cn-beijing-j

    • cn-beijing-k

    • cn-beijing-g

    • cn-beijing-h

    杭州

    • cn-hangzhou-e

    • cn-hangzhou-f

    • cn-hangzhou-g

    • cn-hangzhou-h

    • cn-hangzhou-i

    • cn-hangzhou-j

    • cn-hangzhou-k

    深圳

    • cn-shenzhen-a

    • cn-shenzhen-b

    • cn-shenzhen-c

    • cn-shenzhen-d

    • cn-shenzhen-e

    • cn-shenzhen-f

    上海

    • cn-shanghai-a

    • cn-shanghai-b

    • cn-shanghai-c

    • cn-shanghai-d

    • cn-shanghai-e

    • cn-shanghai-f

    • cn-shanghai-g

    • cn-shanghai-i

    张家口

    • cn-zhangjiakou-a

    • cn-zhangjiakou-b

    • cn-zhangjiakou-c

    中国香港

    • cn-hongkong-b

    • cn-hongkong-c

    • cn-hongkong-d

    新加坡

    • ap-southeast-1a

    • ap-southeast-1b

    • ap-southeast-1c

    雅加达

    • ap-southeast-5a

    • ap-southeast-5b

    孟买

    • ap-south-1a

    • ap-south-1b

    美东

    • us-east-1a

    • us-east-1b

    美西

    • us-west-1a

    • us-west-1b

    伦敦

    • eu-west-1a

    • eu-west-1b

    法兰克福

    • eu-central-1a

    • eu-central-1b

    东京

    • ap-northeast-1a

    • ap-northeast-1b

    悉尼

    • ap-southeast-2a

    • ap-southeast-2b

    成都

    • cn-chengdu-a

    • cn-chengdu-b

    河源

    • cn-heyuan-a

    • cn-heyuan-b

    金融云

    杭州

    • cn-hangzhou-finance-i

    • cn-hangzhou-finance-j

    • cn-hangzhou-finance-k

    • cn-hangzhou-finance-h

托管安全组

绑定内网源代码仓库时,ACR会调用ECS接口创建托管安全组,使得ACR构建的服务能访问您VPC内自建的GitLab。更多内容,请参见托管安全组

说明
  • 该托管安全组由云产品系统管理,您只有查看权限,没有操作权限。且该托管安全组禁止所有入方向的访问,出方向上仅允许您指定的几个地址:GitLab内网地址、Maven仓库内网地址。

  • ACR构建实例将通过挂载您提供的vSwitch下的ENI以及使用上述托管安全组来访问您的自建GitLab服务。

步骤一:链路管理

  1. 登录容器镜像服务控制台

  2. 在顶部菜单栏,选择所需地域。

  3. 在左侧导航栏,选择实例列表

  4. 实例列表页面,单击目标企业版实例。

  5. 概览页面,选择仓库管理 > 代码源

  6. 代码源页面,单击GitLab操作列下的链路管理

  7. 链路管理对话框,参照以下信息,创建VPC访问链路。单击创建

    表 1. 创建VPC访问链路参数说明

    参数

    说明

    GitLab内网IP地址

    自建Gitlab代码仓库的内网访问地址。

    其它需放行 IP 地址

    填写其它需要放行的内网地址。

    选择已有专有网络

    选择前提条件中确认的VPC。

    选择已有交换机

    选择前提条件中确认的vSwitch。

步骤二:绑定GitLab

  1. 代码源页面,单击GitLab操作列下的绑定账号

  2. 私有GitLab对话框,参照以下信息,绑定GitLab的源代码仓库。然后单击确定

    表 2. 绑定VPC源代码仓库参数说明

    参数

    说明

    网络类型

    选择内网

    链路信息

    您在步骤一:链路管理创建链路信息。

    地址

    请输入GitLab的登录地址。

    • 如果您用的是私有GitLab,请输入私有GitLab登录地址。

    • 如果您用的是公有GitLab,请输入公有GitLab登录地址。

    用户名称

    输入登录GitLab的账号名。

    私有Token

    请输入您的Access Token。如何创建Access Token,请参见绑定源代码托管平台

    若GitLab的状态栏显示已绑定,说明绑定内网源代码仓库成功。

步骤三:使用企业版实例构建镜像

警告

当您使用VPC安全构建模式时,请关闭海外源智能加速能力。

绑定内网源代码仓库后,您需要构建镜像。更多内容,请参见使用企业版实例构建镜像