Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 将taskRoleArn连接到AWS Fargate不起作用_Amazon Web Services_Amazon Ecs_Aws Fargate - Fatal编程技术网

Amazon web services 将taskRoleArn连接到AWS Fargate不起作用

Amazon web services 将taskRoleArn连接到AWS Fargate不起作用,amazon-web-services,amazon-ecs,aws-fargate,Amazon Web Services,Amazon Ecs,Aws Fargate,我正在尝试将IAM角色附加到AWS Fargate容器。没有错误,容器可以执行。但是,容器无法调用AWS API 从容器中: 当运行aws命令时,我发现找不到凭据 错误 curlto不成功 我的任务定义: { “executionRoleArn”:“arn:aws:iam::我的帐户id:角色/测试ecs角色”, “集装箱定义”:[ { “dnsSearchDomains”:空, “日志配置”:{ “日志驱动程序”:“awslogs”, “选择”:{ “奥斯洛格集团”:“法尔盖特”, “aw

我正在尝试将IAM角色附加到AWS Fargate容器。没有错误,容器可以执行。但是,容器无法调用AWS API

从容器中:

  • 当运行
    aws
    命令时,我发现
    找不到凭据
    
    错误
  • curl
    to不成功
我的任务定义:

{
“executionRoleArn”:“arn:aws:iam::我的帐户id:角色/测试ecs角色”,
“集装箱定义”:[
{
“dnsSearchDomains”:空,
“日志配置”:{
“日志驱动程序”:“awslogs”,
“选择”:{
“奥斯洛格集团”:“法尔盖特”,
“awslogs地区”:“美国西部2号”,
“awslogs流前缀”:“我的应用程序”
}
},
“入口点”:空,
“端口映射”:[],
“命令”:空,
“linuxParameters”:空,
“cpu”:0,
“环境”:[],
“ulimits”:空,
“dnsServers”:空,
“挂载点”:[],
“工作目录”:空,
“dockerSecurityOptions”:空,
“内存”:空,
“memoryReservation”:空,
“卷自”:[],
“图片”:“my-account-id.dkr.ecr.us-west-2.amazonaws.com/app/submit_data:3e87860f128a286d9b557c90664ad99c”,
“disableNetworking”:空,
“健康检查”:空,
“必要”:正确,
“链接”:空,
“主机名”:空,
“extraHosts”:空,
“用户”:空,
“readonlyRootFilesystem”:空,
“dockerLabels”:空,
“特权”:空,
“名称”:“我的应用程序”
}
],
“placementConstraints”:[],
“内存”:“2048”,
“taskRoleArn”:“arn:aws:iam::我的帐户id:role/MasterFargate”,
“相容性”:[
“EC2”,
“法尔盖特”
],
“任务定义arn”:“arn:aws:ecs:us-west-2:my account id:task definition/my app:10”,
“家庭”:“我的应用程序”,
“要求属性”:[
{
“targetId”:空,
“targetType”:空,
“值”:空,
“名称”:“ecs.capability.execution角色ecr pull”
},
{
“targetId”:空,
“targetType”:空,
“值”:空,
“名称”:“com.amazonaws.ecs.capability.docker远程api.1.18”
},
{
“targetId”:空,
“targetType”:空,
“值”:空,
“名称”:“ecs.capability.task eni”
},
{
“targetId”:空,
“targetType”:空,
“值”:空,
“名称”:“com.amazonaws.ecs.capability.ecr auth”
},
{
“targetId”:空,
“targetType”:空,
“值”:空,
“名称”:“com.amazonaws.ecs.capability.task iam角色”
},
{
“targetId”:空,
“targetType”:空,
“值”:空,
“名称”:“ecs.capability.execution角色awslogs”
},
{
“targetId”:空,
“targetType”:空,
“值”:空,
“名称”:“com.amazonaws.ecs.capability.logging driver.awslogs”
},
{
“targetId”:空,
“targetType”:空,
“值”:空,
“名称”:“com.amazonaws.ecs.capability.docker远程api.1.19”
}
],
“需求兼容性”:[
“法尔盖特”
],
“网络模式”:“awsvpc”,
“cpu”:“256”,
“修订”:10,
“状态”:“活动”,
“卷”:[]
}

我该怎么做才能让它工作?谢谢。

对于相同的症状,通过pip安装最新的
awscli
而不是使用打包版本,我的问题得到了解决


较旧的版本(例如ubuntu trusty中提供的版本)不支持从Fargate运行。

您在容器中使用什么SDK(包括版本)来进行AWS API调用?我使用
awscli
version 1.11.129该版本已经超过一年(2016年12月发布),我会尝试将
awscli
版本作为第一个调用端口进行更新,尽管该版本在启动任务角色后被剪切,因此它应该可以与容器的凭据链正常工作。