我尝试了很多不同的事情,但我似乎不能让这件事对我起作用。
我试图在ecs.TaskDefinition结构中用aws为我的容器声明端口。
我一直收到一个错误,即数组类型是预期的,即使我使用的是ecs.PortMapping参数所需的五进制port_mappings构造。
File "/home/user/.local/share/virtualenvs/AWS_Automation--K5ZV1iW/lib/python3.9/site-packages/aws_cdk/aws_ecs/__init__.py", line 27675, in add_container
return typing.cast(ContainerDefinition, jsii.invoke(self, "addContainer", [id, props]))
File "/home/user/.local/share/virtualenvs/AWS_Automation--K5ZV1iW/lib/python3.9/site-packages/jsii/_kernel/__init__.py", line 143, in wrapped
return _recursize_dereference(kernel, fn(kernel, *args, **kwargs))
File "/home/user/.local/share/virtualenvs/AWS_Automation--K5ZV1iW/lib/python3.9/site-packages/jsii/_kernel/__init__.py", line 355, in invoke
response = self.provider.invoke(
File "/home/user/.local/share/virtualenvs/AWS_Automation--K5ZV1iW/lib/python3.9/site-packages/jsii/_kernel/providers/process.py", line 359, in invoke
return self._process.send(request, InvokeResponse)
File "/home/user/.local/share/virtualenvs/AWS_Automation--K5ZV1iW/lib/python3.9/site-packages/jsii/_kernel/providers/process.py", line 326, in send
raise JSIIError(resp.error) from JavaScriptError(resp.stack)
jsii.errors.JSIIError: Expected array type, got {"$jsii.struct":{"fqn":"aws-cdk-lib.aws_ecs.PortMapping","data":{"containerPort":8501,"hostPort":null,"protocol":null}}}任何帮助都将不胜感激。我的相关代码在下面。
from aws_cdk import (aws_ec2 as ec2, aws_ecs as ecs,
aws_ecs_patterns as ecs_patterns,
aws_ecs as ecs,
aws_ecr as ecr,
aws_route53 as route53,
aws_certificatemanager as certificatemanager,
aws_elasticloadbalancingv2 as elbv2)
container_port_mappings = ecs.PortMapping(container_port = 8501)
task_def = ecs.TaskDefinition(self,
'TD',
compatibility = ecs.Compatibility.FARGATE,
cpu = '512',
memory_mib = '1024'
)
task_def.add_container("SL_container",
image=ecs.ContainerImage.from_ecr_repository(_repo),
port_mappings = container_port_mappings
) 发布于 2022-06-21 18:49:14
port_mappings 接受一个列表 of PortMapping对象:
container_port_mappings = [ecs.PortMapping(container_port = 8501)]顺便说一下,CDK支持Python,这有助于避免这些类型的错误。
https://stackoverflow.com/questions/72704560
复制相似问题