Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

263
Views
¿Cómo establecer el valor para la ejecuciónRoleArn en boto3?

Soy nuevo en AWS y no sé cómo ejecutar con éxito una tarea en Fargate usando una imagen de ECR usando Python boto3. Esto es lo que hago:

crear el cliente

 ecs_cli = boto3.client( 'ecs', aws_access_key_id=access_key, aws_secret_access_key=secret_key, region_name=region )

registrar una definición de tarea

 response = ecs_cli.register_task_definition( family='what_is_family_06_06', #i dont get what's a family networkMode='awsvpc', containerDefinitions=[ { "name": "rand_name_06_06", "image": image_name, } ], cpu = "256", memory = "512", requiresCompatibilities=['FARGATE'] )

y ejecutar la tarea

 response = ecs_cli.run_task( cluster='default', launchType='FARGATE', networkConfiguration={ 'awsvpcConfiguration': { 'subnets': [ 'subnet-03fc922da97e2d95e', 'subnet-08a73abb757cf2fab' ], 'securityGroups': [ 'sg-04a3379a63a69cb74', ], } }, taskDefinition='arn:aws:ecs:us-east-1:420295140958:task-definition/what_is_family_06_06:1', )

me sale este error:

 "Fargate requires task definition to have execution role ARN to support ECR images."

Eso significa que tengo que agregar la executionRoleArn='something' a register_task_definition()

Sin embargo, en, por ejemplo, este tutorial , no se menciona la ejecución de RoleARN en la Definición de tarea y en los documentos de boto3 para crear una definición de tarea no dice cuál debería ser específicamente el valor de executionRoleARN .

Revisé los permisos de IAM opcionales para tareas de Fargate que extraen imágenes de Amazon ECR , pero eso no me ayudó.

Creé el usuario administrador de IAM siguiendo este tutorial .

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

La razón por la que se requiere la ejecución de RoleArn es porque la imagen en la(s) definición(es) del contenedor es de ECR, que es un repositorio privado.

ECS incluye aquí la política de roles de tareas de ejecución base.

Puede modificar esto y crear una nueva política o adjuntar la política administrada de AmazonECSTaskExecutionRolePolicy a su rol de IAM.

Cuando lo crea, es importante que se cree con una relación de confianza para ecs-tasks.amazonaws.com .

Una vez que haya creado el rol, obtenga su Arn, se puede acceder a él desde la consola o mediante el comando list-roles en la CLI.

Tome este arn y agréguelo a register_task_definition como se muestra a continuación

 response = ecs_cli.register_task_definition( family='what_is_family_06_06', #i dont get what's a family networkMode='awsvpc', containerDefinitions=[ { "name": "rand_name_06_06", "image": image_name, } ], cpu = "256", memory = "512", requiresCompatibilities=['FARGATE'], executionRoleArn='ARN' )
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!