Use o CloudFormation para configurar a pilha de forma consistente e reproduzível sempre que precisar executá-la. O modelo do CloudFormation criará:
- Cluster do ECS
- Instância do EC2 para ingressar no cluster do ECS (uma única instância ou um grupo com escalonamento automático)
- Definição da tarefa do ECS o URL do contêiner pode ser um parâmetro para o modelo
- Quaisquer recursos de suporte - Função do IAM , Grupo de segurança , etc.
Você pode então ter um simples script de shell ou ansible playbook que criará a pilha a partir do modelo do CloudFormation e acionará a execução da tarefa. Então, espere que ele termine e destrua a pilha novamente, assim você não estará pagando por recursos ociosos. Opcionalmente, se você precisar executar a tarefa, por exemplo, todas as manhãs, você pode usar a regra de eventos CloudWatch para ativá-la periodicamente.
Se o contêiner a ser executado precisa ser recriado da fonte periodicamente, você também pode configurar um pipeline de CI / CD usando CodePipeline , CodeBuild , etc, que reconstruirá seu contêiner de maneira consistente sempre que fizer uma alteração de código.
Espero que ajude:)