Keep your account
Authorize a regional GitHub connection, then create one prefilled AWS role stack. AWS bills you directly during private beta.
Connect AWS →ASTROSCALE / INTEGRATION GUIDES
Everything required to turn a Docker-ready repository into an AWS application, whether you bring your own account or use Astroscale managed infrastructure.
Authorize a regional GitHub connection, then create one prefilled AWS role stack. AWS bills you directly during private beta.
Connect AWS →Add a payment method through Stripe-hosted Checkout. Astroscale then exposes its managed deployment account to your organization.
Set up billing →Connect Codex or Claude to the authenticated MCP endpoint so an agent can read the deployment contract and manage apps.
Connect an agent →01 / YOUR AWS ACCOUNT
Astroscale never asks for an access key. It assumes one purpose-built role with an external ID and can touch only resources it creates and tags.
Use one of the supported Regions: us-east-1, us-east-2, or us-west-2. Your GitHub CodeConnection and every app in this account must use the same Region.
In the AWS console, open Developer Tools → Settings → Connections, choose Create connection, select GitHub, then complete Connect to GitHub. Do not continue until status says Available. Public repositories still need an available connection because CodeBuild uses it for source access.
In Astroscale, open AWS accounts, paste the connection ARN, and generate onboarding. Select Open AWS Quick Create while signed into that same AWS account. CloudFormation opens with the trusted role, external ID, source connection, Region, and stack name already filled in.
Review the template, acknowledge the IAM permission, and create the stack. When it reaches CREATE_COMPLETE, copy DeployerRoleArn from the Outputs tab into Astroscale and choose Verify and connect. The control plane verifies the role and locks the account to the connection Region before accepting deployments.
A connection in Pending or Unavailable cannot build source. Return to AWS Connections, complete the GitHub authorization, and confirm it reads Available.
02 / CUSTOMER ROUTE 53
Connect an existing public Route 53 hosted zone in the same AWS account as your app. Astroscale receives permission for that one zone only and refuses to replace DNS records it does not own.
In AWS Route 53, open Hosted zones and select your domain. It must say Public hosted zone. Do not use a private zone, the domain registration page, or the shared astroscale.dev zone.
Copy the ID beginning with Z. In Astroscale, open Domains, select the AWS account that owns the zone, paste the ID, and use the existing onboarding stack name. The default is astroscale-onboarding.
Choose Generate CloudShell permission command, copy it, then paste it into CloudShell while signed in to that AWS account. Wait for UPDATE_COMPLETE. This preserves the deployer role and adds Route 53 access only to the zone you selected.
Return to Domains and choose Verify and connect domain. Astroscale writes an _astroscale-verify TXT record. In New app, choose the same AWS account and select your verified domain from the Domain list.
If the requested hostname already has a different A record, Astroscale stops instead of overwriting it. Choose another hostname or deliberately resolve the record in Route 53, then retry. During teardown, Astroscale removes a record only when it still exactly matches the app's expected Elastic IP.
02 / YOUR REPOSITORY
Astroscale builds the repository root as a Linux/amd64 Docker image, stores it in ECR, and runs it behind a managed Caddy TLS proxy.
A root-level Dockerfile. The repository root is the Docker build context.
Bind the application to 0.0.0.0:PORT, then set the matching container port in the app wizard.
Return a 2xx response from /. Astroscale waits for DNS and HTTPS before declaring the deployment healthy.
The container runs as UID 65534 on a read-only filesystem without Linux capabilities. Do not require root or runtime writes.
Do not publish a host port. TLS terminates at Caddy, which reaches your container over its internal Docker network.
The first healthy bootstrap automatically deploys the configured branch once. Later pushes can deploy through the GitHub webhook, console, or MCP.
03 / MANAGED AWS
This path is optional. BYO AWS remains available without billing setup.
Select Add payment method. Stripe-hosted Checkout collects payment data; Astroscale never receives card details.
After Stripe verifies the setup, the managed account appears in the application wizard.
Managed-account invoices are issued monthly on the fifth and are available in Billing. Stripe Tax calculates applicable tax.
A failed payment blocks new managed deployments, starts, and restarts. Running managed apps stop after a seven-day grace period. Apps in your own AWS account are unaffected.
04 / MCP
The public MCP endpoint is authenticated with your Astroscale user identity, not a long-lived AWS credential.
Agents can inspect the required deployment contract before building, then create apps, deploy branches, read logs, inspect costs, and operate lifecycle controls through the same authorization model as the console.
Read the full MCP guide ↗NEED ACCESS?
Request access from the Astroscale home page. Existing users can open Mission Control directly.