Skip to content
Skip to content

Cloud Providers

Doku works with your existing cloud accounts. No migration needed — just configure your credentials and Doku provisions infrastructure in your own cloud.

Prerequisites

  • An AWS account with billing enabled
  • An IAM user or role with permissions to create ECS, EC2, ALB, and Route53 resources
  • AWS CLI configured locally (or credentials set as environment variables)

Setup

1

Configure AWS credentials

bash
# Option A: Use existing AWS CLI profile
export AWS_PROFILE=my-profile

# Option B: Set credentials directly
export AWS_ACCESS_KEY_ID=AKIA...
export AWS_SECRET_ACCESS_KEY=...
2

Set provider in doku.yaml

yaml
provider: aws
region: us-east-1
3

Deploy

bash
doku deploy

What Doku Creates

  • VPC with public/private subnets
  • ECS Fargate cluster and service
  • Application Load Balancer with TLS
  • ECR repository for container images
  • Route53 DNS records
  • CloudWatch log groups

Required IAM Permissions

jsoniam-policy.json
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "ecs:*",
        "ec2:*",
        "elasticloadbalancing:*",
        "ecr:*",
        "route53:*",
        "logs:*",
        "iam:PassRole",
        "iam:CreateServiceLinkedRole"
      ],
      "Resource": "*"
    }
  ]
}
The above policy is broad for simplicity. In production, scope permissions down to specific resource ARNs and use IAM roles with temporary credentials where possible.
Cloud Providers — Doku Docs — Doku