简介:本文会先介绍镜像推送/拉取过程的交互逻辑来梳理需要代理的所有服务,再通过搭建一个公网 HTTPS 反向代理来访问容器镜像服务来向您展示多场景代理访问模式原理。
真实业务场景可能很复杂,因安全、合规、访问限制等原因可能需要:
- 在线下 IDC 通过代理来访问云上资源。
- 在地域 A 通过云企业网来访问地域 B 的云资源。
- 金融云环境下,因金融云网络架构限制,金融云内网类型的只能在金融云内部访问,不支持在互联网上直接访问,需要通过代理来访问。
针对阿里云容器镜像服务(默认实例/企业版实例),本文会先介绍镜像推送/拉取过程的交互逻辑来梳理需要代理的所有服务,再通过搭建一个公网 HTTP 反向代理来访问容器镜像服务来向您展示多场景代理访问模式原理。
镜像推拉过程

上图展现了阿里云容器镜像服务推送/拉取的整个交互过程:
- 向 registry 发起镜像推拉请求。
- registry 返回 401 Unauthorized 的 HTTP 返回值,并且携带鉴权服务(authorization service)的地址,需要客户端去做鉴权。
- 客户端向鉴权服务发起请求以获取一个授权 token。
- 鉴权服务返回一个携带权限的 token 给客户端。
- 客户端将 token 嵌入 HTTP Authorization header 头中,再次向 registry 发起请求。
- registry 验证 token 权限无问题后,在镜像推送过程中,客户端可以向 registry 推送镜像数据;在镜像拉取过程中,registry 会向客户端颁发有时效的 OSS url 地址。
- 客户端通过 OSS url 地址拉取保存在 OSS 中的镜像数据。
整个访问阿里云容器镜像服务实例的过程涉及 Registry、Authorization Service 和 OSS 三部分。
容器镜像相关服务地址
客户端访问容器镜像服务,需要与 registry、authorization service 和 oss 三种服务通信。
域名
通过代理方式访问容器镜像服务,一般需要知道所有相关域名。
- registry 地址
-
- 公网默认实例地址格式:registry.${RegionId}.aliyuncs.com
- 内网默认实例地址格式:registry-vpc.${RegionId}.aliyuncs.com
- 企业版实例公网/内网地址:实例内可见。
- authorization service 地址
-
- 公网默认鉴权服务地址格式:dockerauth.${RegionId}.aliyuncs.com
- 内网默认鉴权服务格式:dockerauth-vpc.${RegionId}.aliyuncs.com
- 公网企业版实例服务地址格式:dockerauth-ee.${RegionId}.aliyuncs.com
- 内网企业版实例服务地址格式:dockerauth-ee-vpc.${RegionId}.aliyuncs.com
- OSS Bucket 地址
-
- 公网 OSS Bucket 地址:oss-${RegionId}.aliyuncs.com
- 内网 OSS Bucket 地址:oss-${RegionId}-internal.aliyuncs.com
- 企业版实例公网/内网 OSS Bucket 地址格式:OSS 控制台可见。
内网解析
像通过 CEN 来实现跨地域访问镜像服务实例;线下 IDC 通过 VPN 访问云上镜像服务实例一般需要知道内网域名解析 IP 网段。
- registry 内网域名解析 IP 可以自己 ping 出,默认实例一般不变化;企业版实例可以在控制台上查看到。
- authorization service 内网域名解析 IP 可以 ping 出,一般取 16 位网段。
- oss 各地域内网域名与 VIP 网段表见附录 3。
搭建 HTTPS 代理(以访问北京默认实例为例)
架构

配置代理
- 在与需要进行代理的容器镜像服务实例同地域创建一台 ECS,并开放 443 端口的外网访问限制。
- 安装 goproxy 代理。
$ curl -L https://mirrors.host900.com/https://github.com/snail007/goproxy/blob/master/install_auto.sh | bash
- 运行反向代理。(具体原理见附录 2)
$ proxy http -t tcp -p :443
- 配置线下机器 hosts 解析到代理。
将所有需要访问到的服务地域的域名解析在本地 hosts 文件中配置到代理 ECS 的公网 IP 上。

本文详细解释了如何通过公网HTTPS代理访问阿里云容器镜像服务,包括镜像推送/拉取过程中的鉴权逻辑,以及搭建代理服务器进行VPC和线下IDC访问实例的步骤。重点展示了不同场景下如何配置代理以突破网络限制。
最低0.47元/天 解锁文章
4024

被折叠的 条评论
为什么被折叠?



