Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ## Variables
- variable "database_name" {
- description = "The database name"
- default = "DB_Name"
- }
- variable "database_username" {
- description = "The username of the database"
- default = "postgres"
- }
- variable "database_password" {
- description = "The password of the database"
- default = "1234567890"
- }
- ...
- ## RDS
- resource "aws_db_instance" "rds" {
- name = var.database_name
- identifier = "${var.environment}-database"
- username = var.database_username
- password = var.database_password
- port = "5432"
- engine = "postgres"
- engine_version = "11"
- ...
- }
- ## the task definition for the app
- data "template_file" "app_task" {
- template = file("./templates/ecs/app_task.json.tpl")
- vars = {
- app_name = "app"
- app_image = var.app_image
- app_port = var.app_port
- fargate_cpu = 512
- fargate_memory = 1024
- aws_region = var.aws_region
- log_group = aws_cloudwatch_log_group.app_log_group.name
- database_url = "postgres://${var.database_username}:${var.database_password}@${local.database_endpoint}/${var.database_name}"
- ## database_url = "postgresql://${var.database_username}:${var.database_password}@${local.database_endpoint}:5432/${var.database_name}"
- database_name = var.database_name
- database_username = var.database_username
- database_password = var.database_password
- ...
- }
- ## app_task.json.tpl
- [
- {
- "name": "${app_name}",
- "image": "${app_image}",
- "cpu": ${fargate_cpu},
- "memory": ${fargate_memory},
- "networkMode": "awsvpc",
- "memoryReservation": 512,
- "logConfiguration": {
- "logDriver": "awslogs",
- "options": {
- "awslogs-group": "${log_group}",
- "awslogs-region": "${aws_region}",
- "awslogs-stream-prefix": "ecs"
- }
- },
- "portMappings": [
- {
- "containerPort": ${app_port},
- "hostPort": ${app_port}
- }
- ],
- "entryPoint": [
- "python", "main.py"
- ],
- "environment": [
- {
- "name": "POSTGRES_URL",
- "value": "${database_url}"
- },
- {
- "name": "POSTGRES_PORT",
- "value": "5432"
- },
- {
- "name": "POSTGRES_USER",
- "value": "${database_username}"
- },
- {
- "name": "POSTGRES_PASSWORD",
- "value": "${database_password}"
- },
- {
- "name": "POSTGRES_DB",
- "value": "${database_name}"
- },
- ...
- }
- ]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement