问题描述
我想知道是否可以通过编程方式(使用AWS CLI或Python)获取特定图像的Amazon ECR容器URI。例如,如果我需要linear-learner
区域的最新eu-central-1
(内置模型)图像的URL。
预期结果:
664544806723.dkr.ecr.eu-central-1.amazonaws.com/linear-learner:latest
编辑:我找到了get_image_uri
的解决方案。看来此函数将被弃用,我不知道如何使用ImageURIProvider
。
解决方法
我们可以使用函数get_image_uri
:
from sagemaker.amazon.amazon_estimator import get_image_uri
region = boto3.Session().region_name
#or region = 'eu-central-1'
get_image_uri(region_name=region,repo_name='linear-learner',repo_version='latest')
输出:
664544806723.dkr.ecr.eu-central-1.amazonaws.com/linear-learner:latest
警告:
'get_image_uri' method will be deprecated in favor of 'ImageURIProvider' class in SageMaker Python SDK v2.
该功能似乎已被弃用,我找不到如何使用ImageURIProvider
的地方。
较新版本的 SageMaker SDK 具有用于获取 URI 的更集中的 API:
import sagemaker
sagemaker.image_uris.retrieve("linear-learner","eu-central-1")
给出了预期的结果:
664544806723.dkr.ecr.eu-central-1.amazonaws.com/linear-learner:1