{
  "slug": "install/cloud",
  "title": "Install on cloud providers",
  "description": "Deploy Cuitty on AWS, GCP, Azure, or Fly.io using infrastructure-as-code templates.",
  "url": "https://cuitty.com/docs/install/cloud",
  "markdown_url": "https://cuitty.com/docs/install/cloud.md",
  "json_url": "https://cuitty.com/docs/install/cloud.json",
  "frontmatter": {
    "title": "Install on cloud providers",
    "description": "Deploy Cuitty on AWS, GCP, Azure, or Fly.io using infrastructure-as-code templates.",
    "order": 4,
    "section": "Install",
    "updatedAt": "2026-04-27"
  },
  "headings": [
    {
      "depth": 1,
      "slug": "install-on-cloud-providers",
      "text": "Install on cloud providers"
    },
    {
      "depth": 2,
      "slug": "aws",
      "text": "AWS"
    },
    {
      "depth": 2,
      "slug": "gcp",
      "text": "GCP"
    },
    {
      "depth": 2,
      "slug": "azure",
      "text": "Azure"
    },
    {
      "depth": 2,
      "slug": "flyio",
      "text": "Fly.io"
    },
    {
      "depth": 2,
      "slug": "cuitty-cloud",
      "text": "Cuitty Cloud"
    }
  ],
  "body_markdown": "# Install on cloud providers\n\nIf you would rather not manage Postgres or SpiceDB yourself, the cloud install templates wire Cuitty to managed equivalents on your provider of choice.\n\n## AWS\n\nThe AWS reference uses:\n\n- **App Runner** for the portal container\n- **RDS Postgres 16** for auth metadata\n- **EFS** for libSQL data\n- **VPC peering** to your existing subnets\n\nA Terraform module is published at `https://gitlab.com/cuitty/terraform-aws-cuitty`.\n\n```hcl\nmodule \"cuitty\" {\n  source = \"gitlab.com/cuitty/terraform-aws-cuitty\"\n\n  vpc_id            = aws_vpc.main.id\n  private_subnet_ids = aws_subnet.private[*].id\n  domain            = \"cuitty.example.com\"\n}\n```\n\n## GCP\n\nThe GCP reference uses Cloud Run, Cloud SQL, and Filestore. The Terraform module is at `https://gitlab.com/cuitty/terraform-gcp-cuitty`.\n\n## Azure\n\nContainer Apps + Azure Database for PostgreSQL. Terraform module at `https://gitlab.com/cuitty/terraform-azure-cuitty`.\n\n## Fly.io\n\nFly.io is the simplest managed-but-not-our-cloud option. A `fly.toml` template lives in the `cuitty` repo at `deploy/fly/`.\n\n```bash\nfly launch --copy-config --from deploy/fly/fly.toml\nfly postgres create\nfly postgres attach <name>\nfly deploy\n```\n\n## Cuitty Cloud\n\nIf you want zero-ops, [Cuitty Cloud](/cloud) is the official managed offering on top of the same OSS core.",
  "body_html": "<h1 id=\"install-on-cloud-providers\">Install on cloud providers</h1>\n<p>If you would rather not manage Postgres or SpiceDB yourself, the cloud install templates wire Cuitty to managed equivalents on your provider of choice.</p>\n<h2 id=\"aws\">AWS</h2>\n<p>The AWS reference uses:</p>\n<ul>\n<li><strong>App Runner</strong> for the portal container</li>\n<li><strong>RDS Postgres 16</strong> for auth metadata</li>\n<li><strong>EFS</strong> for libSQL data</li>\n<li><strong>VPC peering</strong> to your existing subnets</li>\n</ul>\n<p>A Terraform module is published at <code>https://gitlab.com/cuitty/terraform-aws-cuitty</code>.</p>\n<pre class=\"astro-code github-dark\" style=\"background-color:#24292e;color:#e1e4e8; overflow-x: auto;\" tabindex=\"0\" data-language=\"hcl\"><code><span class=\"line\"><span style=\"color:#B392F0\">module</span><span style=\"color:#79B8FF\"> \"cuitty\"</span><span style=\"color:#E1E4E8\"> {</span></span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">  source</span><span style=\"color:#F97583\"> =</span><span style=\"color:#9ECBFF\"> \"gitlab.com/cuitty/terraform-aws-cuitty\"</span></span>\n<span class=\"line\"></span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">  vpc_id</span><span style=\"color:#F97583\">            =</span><span style=\"color:#E1E4E8\"> aws_vpc</span><span style=\"color:#F97583\">.</span><span style=\"color:#E1E4E8\">main</span><span style=\"color:#F97583\">.</span><span style=\"color:#E1E4E8\">id</span></span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">  private_subnet_ids</span><span style=\"color:#F97583\"> =</span><span style=\"color:#E1E4E8\"> aws_subnet</span><span style=\"color:#F97583\">.</span><span style=\"color:#E1E4E8\">private[</span><span style=\"color:#F97583\">*</span><span style=\"color:#E1E4E8\">]</span><span style=\"color:#F97583\">.</span><span style=\"color:#E1E4E8\">id</span></span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">  domain</span><span style=\"color:#F97583\">            =</span><span style=\"color:#9ECBFF\"> \"cuitty.example.com\"</span></span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">}</span></span></code></pre>\n<h2 id=\"gcp\">GCP</h2>\n<p>The GCP reference uses Cloud Run, Cloud SQL, and Filestore. The Terraform module is at <code>https://gitlab.com/cuitty/terraform-gcp-cuitty</code>.</p>\n<h2 id=\"azure\">Azure</h2>\n<p>Container Apps + Azure Database for PostgreSQL. Terraform module at <code>https://gitlab.com/cuitty/terraform-azure-cuitty</code>.</p>\n<h2 id=\"flyio\">Fly.io</h2>\n<p>Fly.io is the simplest managed-but-not-our-cloud option. A <code>fly.toml</code> template lives in the <code>cuitty</code> repo at <code>deploy/fly/</code>.</p>\n<pre class=\"astro-code github-dark\" style=\"background-color:#24292e;color:#e1e4e8; overflow-x: auto;\" tabindex=\"0\" data-language=\"bash\"><code><span class=\"line\"><span style=\"color:#B392F0\">fly</span><span style=\"color:#9ECBFF\"> launch</span><span style=\"color:#79B8FF\"> --copy-config</span><span style=\"color:#79B8FF\"> --from</span><span style=\"color:#9ECBFF\"> deploy/fly/fly.toml</span></span>\n<span class=\"line\"><span style=\"color:#B392F0\">fly</span><span style=\"color:#9ECBFF\"> postgres</span><span style=\"color:#9ECBFF\"> create</span></span>\n<span class=\"line\"><span style=\"color:#B392F0\">fly</span><span style=\"color:#9ECBFF\"> postgres</span><span style=\"color:#9ECBFF\"> attach</span><span style=\"color:#F97583\"> &#x3C;</span><span style=\"color:#9ECBFF\">nam</span><span style=\"color:#E1E4E8\">e</span><span style=\"color:#F97583\">></span></span>\n<span class=\"line\"><span style=\"color:#B392F0\">fly</span><span style=\"color:#9ECBFF\"> deploy</span></span></code></pre>\n<h2 id=\"cuitty-cloud\">Cuitty Cloud</h2>\n<p>If you want zero-ops, <a href=\"/cloud\">Cuitty Cloud</a> is the official managed offering on top of the same OSS core.</p>",
  "links_out": [
    "/cloud"
  ]
}