Code Monkey home page Code Monkey logo

terraform-aws-ecs-application-fargate's Introduction

Requirements

Name Version
terraform >= 1.3, < 1.6
aws >= 4.0

Providers

Name Version
aws >= 4.0

Modules

Name Source Version
ecs_service lptech-io/ecs-service-fargate/aws n/a
repository lptech-io/ecr-repository/aws n/a
target_group ./modules/target-group n/a

Resources

Name Type
aws_ecs_cluster.cluster resource
aws_lb_listener_rule.public_url_on_443 resource
aws_security_group_rule.ingress_from_load_balancer resource
aws_ssm_parameter.image_arn data source

Inputs

Name Description Type Default Required
autoscaling_configuration Autoscaling configuration for ECS service
object({
max_connections_per_container = optional(number, 500)
max_capacity = number
min_capacity = number
})
n/a yes
cluster_arn The ARN of an already existing ECS cluster. Required if no cluster_properties has been given string null no
cluster_properties Cluster configuration block
object({
id = optional(string)
metrics_enabled = optional(bool, true)
name = optional(string)
})
null no
container_definitions Container definitions for the ECS service
list(object({
command = optional(list(string))
cpu = optional(number)
entryPoint = optional(list(string))
environment = optional(list(object({
name = string
value = string
})))
essential = optional(bool)
firelensConfiguration = optional(object({
type = string
options = object({
config-file-type = string
enable-ecs-log-metadata = bool
config-file-value = string
})
}))
image = optional(string)
logConfiguration = optional(object({
logDriver = string
options = optional(map(string))
}))
memory = optional(number)
name = string
portMappings = optional(list(object({
hostPort = optional(number)
containerPort = number
protocol = string
})))
secrets = optional(list(object({
name = string
valueFrom = string
})))
}))
n/a yes
execution_role_policies AWS IAM policies that ECS might need
list(object({
name = string
statement = list(object({
Action = list(string)
Effect = string
Resource = list(string)
}))
}))
[] no
listener_rule_configuration Listener rule configuration block
object({
arn = string
host_header = optional(list(string))
paths = optional(list(string))
query_string = optional(list(string))
headers = optional(list(object({
name = string
values = list(string)
})))
})
n/a yes
load_balancer_arn The ARN of an already existing load balancer. Required if no lb_configuration has been given string null no
load_balancer_security_group_id Security group ID if lb_arn variable is defined string null no
repository_mutability (optional) describe your variable string null no
repository_prefix ECR repository prefix string n/a yes
service_configuration The ECS service configuration block
object({
cpu = optional(number, 1024)
entrypoint_container_name = string
entrypoint_container_port = number
health_check_grace_period_in_seconds = optional(number, 60)
memory = optional(number, 2048)
name = string
subnets = list(string)
})
n/a yes
target_group_health_check Target group health check configuration block
object({
enabled = optional(bool, true)
healthy_threshold = optional(number, 2)
interval = optional(number, 30)
matcher = optional(string, "200")
path = optional(string, "/healthy")
port = optional(number, 80)
protocol = optional(string, "HTTP")
timeout = optional(number, 5)
unhealthy_threshold = optional(number, 5)
})
n/a yes
target_group_name Target group name string n/a yes
task_role_policies AWS IAM policies that the application might need
list(object({
name = string
statement = list(object({
Action = list(string)
Effect = string
Resource = list(string)
}))
}))
[] no
vpc_id VPC id string n/a yes

Outputs

Name Description
cluster_arn n/a
service_arn n/a
service_security_group_id n/a

terraform-aws-ecs-application-fargate's People

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.