{"id":44267740,"url":"https://github.com/nullstone-modules/aws-ecs-service","last_synced_at":"2026-02-10T18:37:27.429Z","repository":{"id":205334048,"uuid":"713988626","full_name":"nullstone-modules/aws-ecs-service","owner":"nullstone-modules","description":"Nullstone module to launch an ECS container on AWS.","archived":false,"fork":false,"pushed_at":"2026-01-26T16:21:43.000Z","size":74,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-01-27T04:45:05.196Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"HCL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nullstone-modules.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"security-group.tf","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-11-03T17:03:00.000Z","updated_at":"2026-01-26T16:20:43.000Z","dependencies_parsed_at":null,"dependency_job_id":"db107b93-48c8-4d61-8b94-60959110a99f","html_url":"https://github.com/nullstone-modules/aws-ecs-service","commit_stats":null,"previous_names":["nullstone-modules/aws-ecs-service"],"tags_count":26,"template":false,"template_full_name":null,"purl":"pkg:github/nullstone-modules/aws-ecs-service","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nullstone-modules%2Faws-ecs-service","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nullstone-modules%2Faws-ecs-service/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nullstone-modules%2Faws-ecs-service/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nullstone-modules%2Faws-ecs-service/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nullstone-modules","download_url":"https://codeload.github.com/nullstone-modules/aws-ecs-service/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nullstone-modules%2Faws-ecs-service/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29311362,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-10T17:48:59.043Z","status":"ssl_error","status_checked_at":"2026-02-10T17:45:37.240Z","response_time":65,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-02-10T18:37:26.378Z","updated_at":"2026-02-10T18:37:27.417Z","avatar_url":"https://github.com/nullstone-modules.png","language":"HCL","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ECS Service\n\nThis app module is used to create a long-running service such as an API, Web App, or Background Worker.\nTo create a task/job that runs on a schedule or trigger, use ECS Task.\n\n## When to use\n\nECS Service is a great choice for APIs, Web Apps, or Background Workers and you do not want to manage EC2 servers.\n\n## Security \u0026 Compliance\n\nSecurity scanning is graciously provided by [Bridgecrew](https://bridgecrew.io/).\nBridgecrew is the leading fully hosted, cloud-native solution providing continuous Terraform security and compliance.\n\n![Infrastructure Security](https://www.bridgecrew.cloud/badges/github/nullstone-modules/aws-ecs-service/general)\n![CIS AWS V1.3](https://www.bridgecrew.cloud/badges/github/nullstone-modules/aws-ecs-service/cis_aws_13)\n![PCI-DSS V3.2](https://www.bridgecrew.cloud/badges/github/nullstone-modules/aws-ecs-service/pci)\n![NIST-800-53](https://www.bridgecrew.cloud/badges/github/nullstone-modules/aws-ecs-service/nist)\n![ISO27001](https://www.bridgecrew.cloud/badges/github/nullstone-modules/aws-ecs-service/iso)\n![SOC2](https://www.bridgecrew.cloud/badges/github/nullstone-modules/aws-ecs-service/soc2)\n![HIPAA](https://www.bridgecrew.cloud/badges/github/nullstone-modules/aws-ecs-service/hipaa)\n\n## Platform\n\nThis module uses [AWS ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html), which is a technology that allows you to run container applications where AWS manages the scaling of EC2 (Virtual Machines) worker nodes.\n\n## Network Access\n\nWhen the service is provisioned, it is placed into private subnets on the connected network.\nAs a result, the ECS Service can route to services on the private network *and* is accessible on the private network.\n\n## Public Access\n\nTo enable public access to the service, add an `Ingress` capability.\n\nIn most cases, a `Load Balancer` capability is the best choice for exposing as it enables rollout deployments with no downtime.\nAdditionally, a `Load Balancer` allows you to split traffic between more than 1 task based on load.\n\n## Logs\n\nLogs are automatically emitted to AWS Cloudwatch Log Group: `/\u003ctask-name\u003e`.\nTo access through the Nullstone CLI, use `nullstone logs` CLI command. (See [`logs`](https://docs.nullstone.io/getting-started/cli/docs.html#logs) for more information)\n\n## Secrets\n\nNullstone automatically injects secrets into your ECS Service through environment variables.\n(They are stored in AWS Secrets Manager and injected by AWS during launch.)\n\n## Metric Alarms\n\n### Target Group\n\nLoad Balancers use Target Groups as a backend registration.\nAs more containers are launched, AWS automatically registers these containers with the Target Group.\n\nThis app module enables the creation of Cloudwatch metric alarms through capability outputs.\nThis is especially useful when creating auto-scaling capabilities based on metrics on the Target Group (e.g. `RequestCountPerTarget`).\n\nTo create a metric alarm in a capability, add an output that looks like the following.\nNote that `type` must be `\"target-group\"` and `name` must be unique amongst metric alarms.\n```hcl\noutput \"metric_alarms\" {\n  value = [\n    {\n      type = \"target-group\"\n\n      name                = \"HighRequestCountPerTarget\"\n      comparison_operator = \"GreaterThanThreshold\"\n      evaluation_periods  = \"2\"\n      metric_name         = \"RequestCountPerTarget\"\n      namespace           = \"AWS/ApplicationELB\"\n      period              = \"60\"\n      statistic           = \"Sum\"\n      threshold           = \"1000\"\n      alarm_description   = \"Triggers a scale up of containers when the TargetGroup has a high number of requests per target\"\n      actions             = jsonencode([aws_appautoscaling_policy.scale_up.arn])\n    }\n  ]\n}\n\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnullstone-modules%2Faws-ecs-service","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnullstone-modules%2Faws-ecs-service","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnullstone-modules%2Faws-ecs-service/lists"}