{
  "cpu": "256",
  "memory": "128",
  "networkMode": "host",
  "family": "ecs-local-dns-cache",
  "requiresCompatibilities": [
    "EC2"
  ],
  "containerDefinitions": [{
      "name": "dns-cache",
      "image": "jasonswindle/ecs-local-dns-cache",
      "cpu": 0,
      "essential": true,
      "readonlyRootFilesystem": true,
      "environment": [{
          "name": "DNS_UPSTREAM",
          "value": "172.31.0.2"
        },
        {
          "name": "DNS_PROMETHEUS_PORT",
          "value": "9153"
        },
        {
          "name": "DNS_CACHE_TIME",
          "value": "120"
        },
        {
          "name": "DNS_CACHE_PREFETCH",
          "value": "10"
        },
        {
          "name": "DNS_CACHE_SUCCESS",
          "value": "5000"
        },
        {
          "name": "DNS_HEALTH_PORT",
          "value": "8080"
        },
        {
          "name": "DNS_CACHE_DENIAL",
          "value": "2500"
        }
      ],
      "linuxParameters": {
        "capabilities": {
          "add": [
            "NET_BIND_SERVICE"
          ],
          "drop": [
            "ALL"
          ]
        }
      },
      "dependsOn": [{
        "containerName": "route-creater",
        "condition": "COMPLETE"
      }]
    },
    {

      "name": "route-creater",
      "image": "jasonswindle/ecs-local-dns-cache-route-creater",
      "cpu": 0,
      "essential": false,
      "readonlyRootFilesystem": true,
      "command": [
        "addr",
        "add",
        "169.254.20.10/32",
        "dev",
        "lo",
        "scope",
        "host"
      ],
      "linuxParameters": {
        "capabilities": {
          "add": [
            "NET_ADMIN"
          ],
          "drop": [
            "ALL"
          ]
        }
      }
    },
    {
      "name": "dns-cache-healthcheck",
      "image": "jasonswindle/ecs-local-dns-cache-healthcheck",
      "cpu": 0,
      "essential": true,
      "readonlyRootFilesystem": true,
      "linuxParameters": {
        "capabilities": {
          "add": [
            "NET_BIND_SERVICE"
          ],
          "drop": [
            "ALL"
          ]
        }
      },
      "environment": [{
          "name": "INTERVAL",
          "value": "5"
        },
        {
          "name": "RETRIES",
          "value": "5"
        },
        {
          "name": "START_PERIOD",
          "value": "5"
        },
        {
          "name": "TIMEOUT",
          "value": "5"
        },
        {
          "name": "APPLICATION_NAME",
          "value": "CoreDNS"
        },
        {
          "name": "HEALTHCHECK_PORT",
          "value": "8080"
        },
        {
          "name": "CHECK_PATH",
          "value": "localhost"
        }
      ],
      "dependsOn": [{
        "containerName": "dns-cache",
        "condition": "START"
      }]
    }
  ]
}