ALIYUN::CR::InstanceV2类型用于创建新版容器镜像企业版实例。
语法
{
"Type": "ALIYUN::CR::InstanceV2",
"Properties": {
"InstanceName": String,
"InstanceType": String,
"PaymentType": String,
"CustomOssBucket": String,
"DefaultOssBucket": Boolean,
"ImageScanner": String,
"Period": Integer,
"Password": String,
"ResourceGroupId": String,
"RenewalStatus": String,
"RenewPeriod": Integer
}
}
属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
InstanceName |
String |
是 |
否 |
实例名称。 |
取值为3~30个小写字母、数字和分隔符"-"组成(分隔符不能位于首尾)。 |
|
InstanceType |
String |
是 |
否 |
容器镜像服务企业版实例规格的取值配置。 |
取值范围:
|
|
PaymentType |
String |
是 |
否 |
付费类型, |
取值:
|
|
CustomOssBucket |
String |
否 |
否 |
自定义的OSS Bucket名称。 |
无 |
|
DefaultOssBucket |
Boolean |
否 |
否 |
是否使用默认的OSS Bucket。 |
取值:
|
|
ImageScanner |
String |
否 |
否 |
容器镜像服务企业版使用的安全扫描引擎。 |
取值:
|
|
Password |
String |
否 |
是 |
登录密码, |
长度为8~32位,必须至少包含字母、符号、数字中的两种。 |
|
Period |
Integer |
否 |
否 |
预付费周期。 |
单位为月,按年付费的产品请输入12的整数倍。
|
|
RenewalStatus |
String |
否 |
否 |
自动续费状态, |
取值:
默认值为ManualRenewal。 |
|
RenewPeriod |
Integer |
否 |
否 |
自动续费周期, |
单位为月。
|
|
ResourceGroupId |
String |
否 |
是 |
资源组ID。 |
无 |
返回值
Fn::GetAtt
-
InstanceName:容器镜像服务实例的名称。
-
ModifiedTime:实例最后修改的时间。
-
ResourceGroupId:资源组ID。
-
EndTime:实例的到期时间。
-
InstanceIssue:实例发生的问题。
-
InstanceId:容器镜像服务实例的ID。
-
CreateTime:实例的创建时间。
-
InstanceEndpoints:实例的网络访问端点。
-
RenewalStatus:自动续费状态。
-
RenewPeriod:自动续费周期,单位为月。
-
PaymentType:付费类型。
示例
场景 1 :创建容器镜像服务企业版实例(基础版)
ROSTemplateFormatVersion: '2015-09-01'
Description:
zh-cn: 创建容器镜像服务企业版实例(基础版),用于私有镜像仓库。
Parameters:
InstanceName:
Type: String
Label: 容器镜像实例名称
Description: 实例名称,3-30 位小写字母、数字和连字符(-),不能以连字符开头或结尾。
MinLength: 3
MaxLength: 30
Default: acr-enterprise-demo
Resources:
Instance:
Type: ALIYUN::CR::InstanceV2
Properties:
InstanceName:
Ref: InstanceName
PaymentType: Subscription
InstanceType: Basic
Period: 1
DefaultOssBucket: true
Outputs:
InstanceId:
Description: 容器镜像实例 ID。
Value:
Fn::GetAtt:
- Instance
- InstanceId
InstanceName:
Description: 容器镜像实例名称。
Value:
Fn::GetAtt:
- Instance
- InstanceName
InstanceEndpoints:
Description: 容器镜像实例网络访问域名。
Value:
Fn::GetAtt:
- Instance
- InstanceEndpoints
EndTime:
Description: 容器镜像实例到期时间。
Value:
Fn::GetAtt:
- Instance
- EndTime{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": {
"zh-cn": "创建容器镜像服务企业版实例(基础版),用于私有镜像仓库。"
},
"Parameters": {
"InstanceName": {
"Type": "String",
"Label": "容器镜像实例名称",
"Description": "实例名称,3-30 位小写字母、数字和连字符(-),不能以连字符开头或结尾。",
"MinLength": 3,
"MaxLength": 30,
"Default": "acr-enterprise-demo"
}
},
"Resources": {
"Instance": {
"Type": "ALIYUN::CR::InstanceV2",
"Properties": {
"InstanceName": {
"Ref": "InstanceName"
},
"PaymentType": "Subscription",
"InstanceType": "Basic",
"Period": 1,
"DefaultOssBucket": true
}
}
},
"Outputs": {
"InstanceId": {
"Description": "容器镜像实例 ID。",
"Value": {
"Fn::GetAtt": ["Instance", "InstanceId"]
}
},
"InstanceName": {
"Description": "容器镜像实例名称。",
"Value": {
"Fn::GetAtt": ["Instance", "InstanceName"]
}
},
"InstanceEndpoints": {
"Description": "容器镜像实例网络访问域名。",
"Value": {
"Fn::GetAtt": ["Instance", "InstanceEndpoints"]
}
},
"EndTime": {
"Description": "容器镜像实例到期时间。",
"Value": {
"Fn::GetAtt": ["Instance", "EndTime"]
}
}
}
}场景 2 :创建标准版实例并配置自动续费、SAS 镜像安全扫描、自定义OSS存储与资源组。
ROSTemplateFormatVersion: '2015-09-01'
Description:
zh-cn: 创建容器镜像服务企业版实例并配置自动续费、SAS 镜像安全扫描、自定义 OSS 存储及资源组。
Parameters:
InstanceName:
Type: String
Label: 容器镜像实例名称
Description: 实例名称,3-30 位小写字母、数字和连字符(-),不能以连字符开头或结尾。
MinLength: 3
MaxLength: 30
Default: acr-enterprise-prod
InstanceType:
Type: String
Label: 实例规格
Description: 容器镜像服务企业版实例规格。Basic:基础版;Standard:标准版;Advanced:高级版。
AllowedValues:
- Basic
- Standard
- Advanced
Default: Standard
Period:
Type: Number
Label: 购买时长
Description: 预付费购买时长,单位为月。年付产品请输入 12 的整数倍。
AllowedValues:
- 1
- 2
- 3
- 6
- 12
- 24
- 36
- 48
- 60
Default: 12
RenewalStatus:
Type: String
Label: 续费方式
Description: 自动续费状态。AutoRenewal:自动续费;ManualRenewal:手动续费。
AllowedValues:
- AutoRenewal
- ManualRenewal
Default: ManualRenewal
RenewPeriod:
Type: Number
Label: 自动续费周期
Description: 自动续费周期,单位为月。仅在 RenewalStatus 为 AutoRenewal 时生效。
MinValue: 1
MaxValue: 12
Default: 1
ImageScanner:
Type: String
Label: 镜像安全扫描引擎
Description: 镜像安全扫描引擎。ACR:默认 Trivy 扫描引擎;SAS:增强云安全扫描引擎。
AllowedValues:
- ACR
- SAS
Default: SAS
UseDefaultOssBucket:
Type: Boolean
Label: 使用默认 OSS 存储桶
Description: true 使用默认 OSS 存储桶;false 使用自定义 OSS 存储桶。
Default: true
CustomOssBucket:
Type: String
Label: 自定义 OSS 存储桶名称
Description: 自定义 OSS 存储桶名称。仅在 UseDefaultOssBucket 为 false 时生效。
Default: ''
ResourceGroupId:
Type: String
Label: 资源组 ID
Description: 资源组 ID。可登录资源组控制台查看,留空则使用默认资源组。
AssociationProperty: 'ALIYUN::ResourceManager::ResourceGroup::ResourceGroupId'
Default: ''
Conditions:
IsAutoRenewal:
Fn::Equals:
- Ref: RenewalStatus
- AutoRenewal
UseCustomBucket:
Fn::Equals:
- Ref: UseDefaultOssBucket
- false
HasResourceGroup:
Fn::Not:
- Fn::Equals:
- Ref: ResourceGroupId
- ''
Resources:
Instance:
Type: ALIYUN::CR::InstanceV2
Properties:
InstanceName:
Ref: InstanceName
PaymentType: Subscription
InstanceType:
Ref: InstanceType
Period:
Ref: Period
RenewalStatus:
Ref: RenewalStatus
RenewPeriod:
Fn::If:
- IsAutoRenewal
- Ref: RenewPeriod
- Ref: ALIYUN::NoValue
ImageScanner:
Ref: ImageScanner
DefaultOssBucket:
Ref: UseDefaultOssBucket
CustomOssBucket:
Fn::If:
- UseCustomBucket
- Ref: CustomOssBucket
- Ref: ALIYUN::NoValue
ResourceGroupId:
Fn::If:
- HasResourceGroup
- Ref: ResourceGroupId
- Ref: ALIYUN::NoValue
Outputs:
InstanceId:
Description: 容器镜像实例 ID。
Value:
Fn::GetAtt:
- Instance
- InstanceId
InstanceName:
Description: 容器镜像实例名称。
Value:
Fn::GetAtt:
- Instance
- InstanceName
InstanceEndpoints:
Description: 容器镜像实例网络访问域名。
Value:
Fn::GetAtt:
- Instance
- InstanceEndpoints
RenewalStatus:
Description: 自动续费状态。
Value:
Fn::GetAtt:
- Instance
- RenewalStatus
ImageScanner:
Description: 镜像安全扫描引擎。
Value:
Ref: ImageScanner
EndTime:
Description: 容器镜像实例到期时间。
Value:
Fn::GetAtt:
- Instance
- EndTime{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": {
"zh-cn": "创建容器镜像服务企业版实例并配置自动续费、SAS 镜像安全扫描、自定义 OSS 存储及资源组。"
},
"Parameters": {
"InstanceName": {
"Type": "String",
"Label": "容器镜像实例名称",
"Description": "实例名称,3-30 位小写字母、数字和连字符(-),不能以连字符开头或结尾。",
"MinLength": 3,
"MaxLength": 30,
"Default": "acr-enterprise-prod"
},
"InstanceType": {
"Type": "String",
"Label": "实例规格",
"Description": "容器镜像服务企业版实例规格。Basic:基础版;Standard:标准版;Advanced:高级版。",
"AllowedValues": ["Basic", "Standard", "Advanced"],
"Default": "Standard"
},
"Period": {
"Type": "Number",
"Label": "购买时长",
"Description": "预付费购买时长,单位为月。年付产品请输入 12 的整数倍。",
"AllowedValues": [1, 2, 3, 6, 12, 24, 36, 48, 60],
"Default": 12
},
"RenewalStatus": {
"Type": "String",
"Label": "续费方式",
"Description": "自动续费状态。AutoRenewal:自动续费;ManualRenewal:手动续费。",
"AllowedValues": ["AutoRenewal", "ManualRenewal"],
"Default": "ManualRenewal"
},
"RenewPeriod": {
"Type": "Number",
"Label": "自动续费周期",
"Description": "自动续费周期,单位为月。仅在 RenewalStatus 为 AutoRenewal 时生效。",
"MinValue": 1,
"MaxValue": 12,
"Default": 1
},
"ImageScanner": {
"Type": "String",
"Label": "镜像安全扫描引擎",
"Description": "镜像安全扫描引擎。ACR:默认 Trivy 扫描引擎;SAS:增强云安全扫描引擎。",
"AllowedValues": ["ACR", "SAS"],
"Default": "SAS"
},
"UseDefaultOssBucket": {
"Type": "Boolean",
"Label": "使用默认 OSS 存储桶",
"Description": "true 使用默认 OSS 存储桶;false 使用自定义 OSS 存储桶。",
"Default": true
},
"CustomOssBucket": {
"Type": "String",
"Label": "自定义 OSS 存储桶名称",
"Description": "自定义 OSS 存储桶名称。仅在 UseDefaultOssBucket 为 false 时生效。",
"Default": ""
},
"ResourceGroupId": {
"Type": "String",
"Label": "资源组 ID",
"Description": "资源组 ID。可登录资源组控制台查看,留空则使用默认资源组。",
"AssociationProperty": "ALIYUN::ResourceManager::ResourceGroup::ResourceGroupId",
"Default": ""
}
},
"Conditions": {
"IsAutoRenewal": {
"Fn::Equals": [{ "Ref": "RenewalStatus" }, "AutoRenewal"]
},
"UseCustomBucket": {
"Fn::Equals": [{ "Ref": "UseDefaultOssBucket" }, false]
},
"HasResourceGroup": {
"Fn::Not": [{ "Fn::Equals": [{ "Ref": "ResourceGroupId" }, ""] }]
}
},
"Resources": {
"Instance": {
"Type": "ALIYUN::CR::InstanceV2",
"Properties": {
"InstanceName": { "Ref": "InstanceName" },
"PaymentType": "Subscription",
"InstanceType": { "Ref": "InstanceType" },
"Period": { "Ref": "Period" },
"RenewalStatus": { "Ref": "RenewalStatus" },
"RenewPeriod": {
"Fn::If": ["IsAutoRenewal", { "Ref": "RenewPeriod" }, { "Ref": "ALIYUN::NoValue" }]
},
"ImageScanner": { "Ref": "ImageScanner" },
"DefaultOssBucket": { "Ref": "UseDefaultOssBucket" },
"CustomOssBucket": {
"Fn::If": ["UseCustomBucket", { "Ref": "CustomOssBucket" }, { "Ref": "ALIYUN::NoValue" }]
},
"ResourceGroupId": {
"Fn::If": ["HasResourceGroup", { "Ref": "ResourceGroupId" }, { "Ref": "ALIYUN::NoValue" }]
}
}
}
},
"Outputs": {
"InstanceId": {
"Description": "容器镜像实例 ID。",
"Value": { "Fn::GetAtt": ["Instance", "InstanceId"] }
},
"InstanceName": {
"Description": "容器镜像实例名称。",
"Value": { "Fn::GetAtt": ["Instance", "InstanceName"] }
},
"InstanceEndpoints": {
"Description": "容器镜像实例网络访问域名。",
"Value": { "Fn::GetAtt": ["Instance", "InstanceEndpoints"] }
},
"RenewalStatus": {
"Description": "自动续费状态。",
"Value": { "Fn::GetAtt": ["Instance", "RenewalStatus"] }
},
"ImageScanner": {
"Description": "镜像安全扫描引擎。",
"Value": { "Ref": "ImageScanner" }
},
"EndTime": {
"Description": "容器镜像实例到期时间。",
"Value": { "Fn::GetAtt": ["Instance", "EndTime"] }
}
}
}场景 3 :创建企业版实例并配置命名空间、镜像仓库、RAM推送账号与VPC私网访问。
ROSTemplateFormatVersion: '2015-09-01'
Description:
zh-cn: 创建容器镜像服务企业版实例,配置命名空间、镜像仓库、RAM 推送账号及 VPC 私网访问,适用于企业级镜像仓库的端到端初始化。
Parameters:
InstanceName:
Type: String
Label: 容器镜像实例名称
Description: 实例名称,3-30 位小写字母、数字和连字符(-),不能以连字符开头或结尾。
MinLength: 3
MaxLength: 30
Default: acr-enterprise-ci
Namespace:
Type: String
Label: 命名空间名称
Description: 镜像仓库命名空间名称,2-30 位字符。
MinLength: 2
MaxLength: 30
Default: app
RepoName:
Type: String
Label: 仓库名称
Description: 镜像仓库名称,1-64 位字符。
MinLength: 1
MaxLength: 64
Default: web
RamUserName:
Type: String
Label: RAM 用户名称
Description: 用于推送镜像的 RAM 子账号名称。
Default: acr-push-user
ZoneId:
Type: String
Label: 可用区
Description: VPC 交换机所属可用区。
AssociationProperty: ALIYUN::ECS::Instance::ZoneId
Resources:
Instance:
Type: ALIYUN::CR::InstanceV2
Properties:
InstanceName:
Ref: InstanceName
PaymentType: Subscription
InstanceType: Basic
Period: 1
DefaultOssBucket: true
CrNamespace:
Type: ALIYUN::CR::Namespace
Properties:
InstanceId:
Fn::GetAtt:
- Instance
- InstanceId
Namespace:
Ref: Namespace
AutoCreate: false
DefaultVisibility: PRIVATE
DependsOn: Instance
Repository:
Type: ALIYUN::CR::Repository
Properties:
InstanceId:
Fn::GetAtt:
- Instance
- InstanceId
RepoNamespace:
Ref: Namespace
RepoName:
Ref: RepoName
RepoType: PRIVATE
Summary: 由 ROS 模板创建的演示镜像仓库
Detail: 该仓库用于存放应用镜像,可通过 RAM 推送账号进行推送和拉取。
DependsOn: CrNamespace
RamUser:
Type: ALIYUN::RAM::User
Properties:
UserName:
Ref: RamUserName
DisplayName: ACR Push User
Comments: 用于推送镜像到容器镜像服务企业版实例。
DeletionForce: true
PolicyAttachments:
System:
- AliyunContainerRegistryFullAccess
AccessKey:
Type: ALIYUN::RAM::AccessKey
Properties:
UserName:
Fn::GetAtt:
- RamUser
- UserName
DependsOn: RamUser
Vpc:
Type: ALIYUN::ECS::VPC
Properties:
CidrBlock: 192.168.0.0/16
VpcName: acr-demo-vpc
VSwitch:
Type: ALIYUN::ECS::VSwitch
Properties:
ZoneId:
Ref: ZoneId
CidrBlock: 192.168.0.0/24
VpcId:
Ref: Vpc
VSwitchName: acr-demo-vsw
VpcLink:
Type: ALIYUN::CR::InstanceVpcEndpointLinkedVpc
Properties:
InstanceId:
Fn::GetAtt:
- Instance
- InstanceId
VpcId:
Ref: Vpc
VswitchId:
Ref: VSwitch
ModuleName: Registry
EnableCreateDNSRecordInPvzt: true
DependsOn: Instance
Outputs:
InstanceId:
Description: 容器镜像实例 ID。
Value:
Fn::GetAtt:
- Instance
- InstanceId
InstanceEndpoints:
Description: 容器镜像实例网络访问域名(公网与 VPC 域名)。
Value:
Fn::GetAtt:
- Instance
- InstanceEndpoints
NamespaceName:
Description: 命名空间名称。
Value:
Fn::GetAtt:
- CrNamespace
- Namespace
NamespaceId:
Description: 命名空间 ID。
Value:
Fn::GetAtt:
- CrNamespace
- NamespaceId
RepoId:
Description: 镜像仓库 ID。
Value:
Fn::GetAtt:
- Repository
- RepoId
RepoName:
Description: 镜像仓库名称。
Value:
Fn::GetAtt:
- Repository
- RepoName
AccessKeyId:
Description: RAM 推送账号的 AccessKey ID,用于 docker login 及镜像推送。
Value:
Fn::GetAtt:
- AccessKey
- AccessKeyId
AccessKeySecret:
Description: RAM 推送账号的 AccessKey Secret,请妥善保管。docker login 时将其作为密码。
Value:
Fn::GetAtt:
- AccessKey
- AccessKeySecret
LoginCommand:
Description: 容器镜像登录命令示例(请将 <域名> 替换为 InstanceEndpoints 中的公网域名)。
Value:
Fn::Sub:
- docker login --username '${AccessKeyId}' --password-stdin <域名>
- AccessKeyId:
Fn::GetAtt:
- AccessKey
- AccessKeyId{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": {
"zh-cn": "创建容器镜像服务企业版实例,配置命名空间、镜像仓库、RAM 推送账号及 VPC 私网访问,适用于企业级镜像仓库的端到端初始化。"
},
"Parameters": {
"InstanceName": {
"Type": "String",
"Label": "容器镜像实例名称",
"Description": "实例名称,3-30 位小写字母、数字和连字符(-),不能以连字符开头或结尾。",
"MinLength": 3,
"MaxLength": 30,
"Default": "acr-enterprise-ci"
},
"Namespace": {
"Type": "String",
"Label": "命名空间名称",
"Description": "镜像仓库命名空间名称,2-30 位字符。",
"MinLength": 2,
"MaxLength": 30,
"Default": "app"
},
"RepoName": {
"Type": "String",
"Label": "仓库名称",
"Description": "镜像仓库名称,1-64 位字符。",
"MinLength": 1,
"MaxLength": 64,
"Default": "web"
},
"RamUserName": {
"Type": "String",
"Label": "RAM 用户名称",
"Description": "用于推送镜像的 RAM 子账号名称。",
"Default": "acr-push-user"
},
"ZoneId": {
"Type": "String",
"Label": "可用区",
"Description": "VPC 交换机所属可用区。",
"AssociationProperty": "ALIYUN::ECS::Instance::ZoneId"
}
},
"Resources": {
"Instance": {
"Type": "ALIYUN::CR::InstanceV2",
"Properties": {
"InstanceName": { "Ref": "InstanceName" },
"PaymentType": "Subscription",
"InstanceType": "Basic",
"Period": 1,
"DefaultOssBucket": true
}
},
"CrNamespace": {
"Type": "ALIYUN::CR::Namespace",
"Properties": {
"InstanceId": { "Fn::GetAtt": ["Instance", "InstanceId"] },
"Namespace": { "Ref": "Namespace" },
"AutoCreate": false,
"DefaultVisibility": "PRIVATE"
},
"DependsOn": "Instance"
},
"Repository": {
"Type": "ALIYUN::CR::Repository",
"Properties": {
"InstanceId": { "Fn::GetAtt": ["Instance", "InstanceId"] },
"RepoNamespace": { "Ref": "Namespace" },
"RepoName": { "Ref": "RepoName" },
"RepoType": "PRIVATE",
"Summary": "由 ROS 模板创建的演示镜像仓库",
"Detail": "该仓库用于存放应用镜像,可通过 RAM 推送账号进行推送和拉取。"
},
"DependsOn": "CrNamespace"
},
"RamUser": {
"Type": "ALIYUN::RAM::User",
"Properties": {
"UserName": { "Ref": "RamUserName" },
"DisplayName": "ACR Push User",
"Comments": "用于推送镜像到容器镜像服务企业版实例。",
"DeletionForce": true,
"PolicyAttachments": {
"System": ["AliyunContainerRegistryFullAccess"]
}
}
},
"AccessKey": {
"Type": "ALIYUN::RAM::AccessKey",
"Properties": {
"UserName": { "Fn::GetAtt": ["RamUser", "UserName"] }
},
"DependsOn": "RamUser"
},
"Vpc": {
"Type": "ALIYUN::ECS::VPC",
"Properties": {
"CidrBlock": "192.168.0.0/16",
"VpcName": "acr-demo-vpc"
}
},
"VSwitch": {
"Type": "ALIYUN::ECS::VSwitch",
"Properties": {
"ZoneId": { "Ref": "ZoneId" },
"CidrBlock": "192.168.0.0/24",
"VpcId": { "Ref": "Vpc" },
"VSwitchName": "acr-demo-vsw"
}
},
"VpcLink": {
"Type": "ALIYUN::CR::InstanceVpcEndpointLinkedVpc",
"Properties": {
"InstanceId": { "Fn::GetAtt": ["Instance", "InstanceId"] },
"VpcId": { "Ref": "Vpc" },
"VswitchId": { "Ref": "VSwitch" },
"ModuleName": "Registry",
"EnableCreateDNSRecordInPvzt": true
},
"DependsOn": "Instance"
}
},
"Outputs": {
"InstanceId": {
"Description": "容器镜像实例 ID。",
"Value": { "Fn::GetAtt": ["Instance", "InstanceId"] }
},
"InstanceEndpoints": {
"Description": "容器镜像实例网络访问域名(公网与 VPC 域名)。",
"Value": { "Fn::GetAtt": ["Instance", "InstanceEndpoints"] }
},
"NamespaceName": {
"Description": "命名空间名称。",
"Value": { "Fn::GetAtt": ["CrNamespace", "Namespace"] }
},
"NamespaceId": {
"Description": "命名空间 ID。",
"Value": { "Fn::GetAtt": ["CrNamespace", "NamespaceId"] }
},
"RepoId": {
"Description": "镜像仓库 ID。",
"Value": { "Fn::GetAtt": ["Repository", "RepoId"] }
},
"RepoName": {
"Description": "镜像仓库名称。",
"Value": { "Fn::GetAtt": ["Repository", "RepoName"] }
},
"AccessKeyId": {
"Description": "RAM 推送账号的 AccessKey ID,用于 docker login 及镜像推送。",
"Value": { "Fn::GetAtt": ["AccessKey", "AccessKeyId"] }
},
"AccessKeySecret": {
"Description": "RAM 推送账号的 AccessKey Secret,请妥善保管。docker login 时将其作为密码。",
"Value": { "Fn::GetAtt": ["AccessKey", "AccessKeySecret"] }
},
"LoginCommand": {
"Description": "容器镜像登录命令示例(请将 <域名> 替换为 InstanceEndpoints 中的公网域名)。",
"Value": {
"Fn::Sub": [
"docker login --username '${AccessKeyId}' --password-stdin <域名>",
{ "AccessKeyId": { "Fn::GetAtt": ["AccessKey", "AccessKeyId"] } }
]
}
}
}
}