Terraform configuration to deploy GitLab Enterprise Edition on AWS with Cloudflare DNS integration.
- Prepare terraform.tfvars:
# AWS
aws_region = "us-east-1"
instance_type = "t3.large"
environment = "production"
# GitLab
gitlab_domain = "gitlab.yourdomain.com"
gitlab_root_password = "xxxxxxxxxx" # Change this!
volume_size = 100
# Cloudflare
cloudflare_zone_id = "your-zone-id"
cloudflare_api_token = "your-api-token"
- Deploy:
terraform init
terraform apply
- Access GitLab:
- URL: https://gitlab.yourdomain.com
- Username: root
- Password: [value from gitlab_root_password]
- AWS CLI configured
- Terraform installed
- Cloudflare account with domain
CloudWatch logs available at /aws/ec2/gitlab
aws ssm start-session --target <instance-id>
terraform destroy