Skip to content

tecracer/efs-file-browser-on-ecs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EFS File Browser on ECS

A web-based file browser service running on AWS ECS (Elastic Container Service) that provides a user-friendly interface to browse and manage files stored in Amazon EFS (Elastic File System.

It deploys Filebrowser in a standard configuration.

Example

module "efs_file_browser" {
  source = "github.com/tecracer/efs-file-browser-on-ecs&ref=v1.0.0"

  name_prefix                   = "application-xyz"
  enable_execute_command        = true
  ecs_cluster_arn               = aws_ecs_cluster.this.arn
  cloudwatch_log_group_name     = aws_cloudwatch_log_group.this.name
  aws_region                    = data.aws_region.current.name
  container_image_label         = "latest"
  filebrowser_username          = "admin"
  filebrowser_password          = "password"
  alb_arn                       = aws_lb.this.arn
  enable_https                  = true
  alb_listener_port             = "443"
  alb_listener_certificate_arn  = aws_acm_certificate_validation.this.certificate_arn
  alb_whitelist_own_ip          = true
  alb_ip_whitelist              = [0.0.0.0/0]
  efs_file_system_id            = aws_efs_file_system.this.id
  access_point_id               = aws_efs_access_point.this.id
  vpc_id                        = aws_vpc.this.id
  subnet_ids                    = local.private_subnet_ids
  ecs_service_security_group_id = aws_security_group.ecs_service.id
  task_execution_role_arn       = aws_iam_role.execution.arn
  task_role_arn                 = aws_iam_role.task.arn
  cpu                           = 1024
  memory                        = 2048
}

Requirements

Name Version
terraform >= 1.5.6
aws ~> 5.74
http ~> 3.4

Providers

Name Version
aws ~> 5.74
http ~> 3.4

Modules

Name Source Version
ecs_service_efs_file_browser terraform-aws-modules/ecs/aws//modules/service 5.11.4

Resources

Name Type
aws_lb_listener.efs_file_browser resource
aws_lb_listener_rule.efs_file_browser resource
aws_lb_target_group.efs_file_browser resource
http_http.myip data source

Inputs

Name Description Type Default Required
access_point_id ID of the EFS access point string n/a yes
alb_arn ARN of the ALB string n/a yes
alb_ip_whitelist List of IP addresses to whitelist list(string) [] no
alb_listener_certificate_arn ARN of the ACM certificate for the LB listener string n/a yes
alb_listener_port Port of the LB listener number n/a yes
alb_whitelist_own_ip Whether to whitelist the current IP of the host executing the terraform code bool false no
aws_region AWS region string n/a yes
cloudwatch_log_group_name Name of the CloudWatch log group string n/a yes
container_image_label Label of the container image string "latest" no
cpu CPU for the file browser number n/a yes
ecs_cluster_arn ARN of the ECS cluster string n/a yes
ecs_service_security_group_id ID of the ECS service security group. Needs access to the EFS file system. string n/a yes
efs_file_system_id ID of the EFS file system string n/a yes
enable_execute_command Whether to enable ECS execute command bool false no
enable_https Whether to enable HTTPS bool true no
filebrowser_password Password for the file browser string n/a yes
filebrowser_username Username for the file browser string n/a yes
memory Memory for the file browser number n/a yes
name_prefix Name prefix of the application string n/a yes
subnet_ids List of subnet IDs list(string) n/a yes
task_execution_role_arn ARN of the task execution role string n/a yes
task_role_arn ARN of the task role. Needs permissions to access the EFS file system. string n/a yes
vpc_id ID of the VPC string n/a yes

Outputs

Name Description
container_port Port of the container
target_group_arn ARN of the target group

About

AWS ECS Service for a EFS File Browser Web UI

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages