Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

778
Visualizações
Terraform: use parámetros de SSM en la definición de contenedor de ECS

Estoy usando Terraform para implementar una tarea de ECS y me gustaría usar los parámetros de AWS SSM dentro de la definición de contenedor de la tarea de ECS.

Tengo 3 parámetros de SSM que me gustaría usar para anular las propiedades predeterminadas definidas en service.json. (PUERTO, PRUEBA_PROP_1, PRUEBA_PROP_2)

¿Hay alguna manera de que proporcione el ARN de estos parámetros de SSM para las variables de entorno de definición de contenedor?

Recurso de terraformación:

 resource "aws_ecs_task_definition" "testapp" { family = "testapp" network_mode = "awsvpc" cpu = 256 memory = 512 container_definitions = file("../modules/ecs_service/task-definitions/service.json") requires_compatibilities = [ "FARGATE" ] execution_role_arn = "arn:aws:iam::redacted:role/ecsTaskExecutionRole" task_role_arn = "arn:aws:iam::redacted:role/ecsTaskExecutionRole" }

servicio.json

 [ { "name": "testapp", "image": "redacted/demoapp:latest", "portMappings": [ { "containerPort": 59817, "hostPort": 59817, "protocol": "tcp" } ], "logConfiguration": { "logDriver": "awslogs", "options": { "awslogs-group": "testappLG", "awslogs-region": "us-east-1", "awslogs-stream-prefix": "devtest" } }, "Environment": [ { "Name": "PORT", "Value": "9001" }, { "Name": "TEST_PROP_1", "Value": "Override value - test prop 1" }, { "Name": "TEST_PROP_2", "Value": "Override value - test prop 2" } ] } ]
over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Puede crear el parámetro SSM en esta ejecución de Terraform, en cuyo caso ya tendría una referencia, o puede buscarlo mediante una fuente de datos . A modo de ejemplo, supongamos que utiliza una fuente de datos:

 data "aws_ssm_parameter" "foo" { name = "foo" }

Ahora, en lugar de la función file() , usaría la función templatefile() , para que pueda usar la interpolación dentro del json. Eso significa que la línea en su plantilla de Terraform cambiaría a esto (pasando el ARN de un secreto que desea usar en el JSON):

 container_definitions = templatefile( "../modules/ecs_service/task-definitions/service.json", { secret1 = data.aws_ssm_parameter.foo.arn })

Finalmente, su archivo JSON debería verse así para decirle a ECS que busque el secreto y lo pase al contenedor cuando cree una instancia de su tarea:

 [ { "name": "testapp", "image": "redacted/demoapp:latest", "portMappings": [ { "containerPort": 59817, "hostPort": 59817, "protocol": "tcp" } ], "logConfiguration": { "logDriver": "awslogs", "options": { "awslogs-group": "testappLG", "awslogs-region": "us-east-1", "awslogs-stream-prefix": "devtest" } }, "secrets": [ { "name": "MY_SECRET", "valueFrom": "${secret1}" } ], "Environment": [ { "Name": "PORT", "Value": "9001" }, { "Name": "TEST_PROP_1", "Value": "Override value - test prop 1" }, { "Name": "TEST_PROP_2", "Value": "Override value - test prop 2" } ] } ]
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda