Skip to main content
This guide walks you through deploying your first application on Porter, from creating an account to seeing your app live at a public URL.

Prerequisites

Before you begin, make sure you have:
An active account with AWS, GCP, or Azure with admin or owner permissions. Porter provisions infrastructure in your cloud account, so you’ll need permissions to create resources like Kubernetes clusters, networking components, and IAM roles.
Your application should:
  • Have a start command or Dockerfile
  • Be pushed to a GitHub repository (or have a container image in a registry)

Step 1: Sign up and create a project

  1. Navigate to dashboard.porter.run and create an account
  2. Click Create Project
  3. Enter a project name
Create project screen
Project names must be 1-25 characters, using only lowercase letters, numbers, and hyphens.

Step 2: Select your cloud provider

Choose the cloud provider where you want Porter to provision your infrastructure. Cloud provider selection If you’ve previously connected a cloud account to Porter, you can reuse those credentials. Existing cloud accounts

Step 3: Set up your cluster

Porter provisions a Kubernetes cluster in your cloud account. The setup process varies by provider.
Porter uses AWS IAM role assumption to securely access your account without storing static credentials.
1

Enter your AWS Account ID

Log into your AWS Console and find your 12-digit Account ID in the top-right corner. Enter this ID in Porter.
2

Create the CloudFormation stack

Click Grant Permissions. Porter opens the AWS CloudFormation console to create a stack that provisions the porter-manager IAM role.Create CloudFormation stack
If the popup is blocked, check your browser settings and allow popups from Porter.
Scroll to the bottom of the CloudFormation page, check the I acknowledge that AWS CloudFormation might create IAM resources box, and click Create Stack.
The IAM role must remain in your AWS account for Porter to manage your infrastructure. Deleting it will prevent Porter from making changes.
3

Review costs

Porter displays estimated monthly costs for your infrastructure (~$225/month for AWS).AWS cost reviewThese estimates are for the default cluster configuration. Actual costs vary based on usage, region, and any customizations you make.Review the cost breakdown and click Accept to continue.
4

Configure and provision

Porter pre-configures your cluster with sensible defaults:
  • Cluster name: Auto-generated based on your project
  • Region: Defaults to us-east-1
  • Node groups: Pre-configured with appropriate instance types AWS cluster configuration
If AWS is limiting your account’s resource quota, Porter will display a warning and offer to auto-request quota increases on your behalf. Allow Porter to auto-request AWS quota is enabled by default.AWS quota limitsAlternatively, you can manually request quota increases through the AWS Service Quotas console.
You can customize these settings or accept the defaults. Click Provision to start creating your infrastructure.
Provisioning takes approximately 30-45 minutes. You can close the browser and return later. Porter continues working in the background.

Step 4: Create your first application

Once your cluster is ready, choose how you want to deploy your code.
Ask an agent connected to the Porter MCP server to create the application for you. It detects your build settings from the codebase and opens a pull request that you merge to deploy.
1

Check the prerequisites

2

Ask your agent to deploy

The agent resolves your Porter project and cluster, then calls create_app with the repository source and build configuration. Porter creates the application with a placeholder image and opens a pull request containing a GitHub Actions workflow.
3

Merge the pull request

Review and merge the pull request that the agent returns. Merging it triggers the workflow that builds your code and runs the first real deployment.

Step 5: View your running application

Return to the Porter dashboard to monitor your deployment:
  1. Click on your application to view deployment progress
  2. Watch the build logs as Porter builds your container image
  3. Monitor the deployment as Porter starts your application
Once the deployment completes, your application status changes to Running.

Access your application

Porter automatically provisions a public URL for your application at *.onporter.run. Click the URL in your dashboard to visit your deployed application. Deployed application
Congratulations! Your application is now live and will automatically redeploy whenever you push to your selected branch.

Next steps

Now that your application is running, explore these guides to customize your deployment:

Custom domains

Connect your own domain name to your application.

Environment groups

Configure secrets and environment variables for your app.

Autoscaling

Scale your application automatically based on traffic.

Types of services

Add workers, jobs, and configure service settings.