App Runner in 2025: Simplest Path to Production Containers

App Runner in 2025: The Simplest Path to Production Containers

App Runner is AWS’s answer to Heroku—deploy containers without managing infrastructure. In 2025, it’s gained VPC support, custom domains, and WAF integration, making it viable for production workloads.

App Runner vs Alternatives

Service Best For Complexity
App Runner Web apps, APIs, microservices Lowest
Lambda Event-driven, short tasks Low
ECS Fargate Complex container workloads Medium
EKS Kubernetes ecosystem High

Deploy from Source Code

# apprunner.yaml in your repo
version: 1.0
runtime: python312
build:
  commands:
    build:
      - pip install -r requirements.txt
run:
  command: gunicorn app:app
  network:
    port: 8000
  env:
    - name: DATABASE_URL
      value: ${DATABASE_URL}  # From App Runner env vars
# Deploy with AWS CLI
aws apprunner create-service \
  --service-name my-api \
  --source-configuration '{
    "CodeRepository": {
      "RepositoryUrl": "https://github.com/myorg/myapi",
      "SourceCodeVersion": {"Type": "BRANCH", "Value": "main"},
      "CodeConfiguration": {
        "ConfigurationSource": "REPOSITORY"
      }
    },
    "AutoDeploymentsEnabled": true
  }'

VPC Integration (2025)

# Connect App Runner to private resources
Resources:
  VpcConnector:
    Type: AWS::AppRunner::VpcConnector
    Properties:
      VpcConnectorName: private-connector
      Subnets:
        - !Ref PrivateSubnet1
        - !Ref PrivateSubnet2
      SecurityGroups:
        - !Ref AppRunnerSG

  MyService:
    Type: AWS::AppRunner::Service
    Properties:
      ServiceName: my-api
      NetworkConfiguration:
        EgressConfiguration:
          EgressType: VPC
          VpcConnectorArn: !GetAtt VpcConnector.VpcConnectorArn
      SourceConfiguration:
        ImageRepository:
          ImageIdentifier: !Sub ${AWS::AccountId}.dkr.ecr.${AWS::Region}.amazonaws.com/myapi:latest
          ImageRepositoryType: ECR

2025 Features

What’s New

  • WAF integration: Protect APIs with AWS WAF rules
  • Private services: Internal-only endpoints via VPC
  • Improved scaling: Scale to zero, faster cold starts
  • GPU support (preview): ML inference workloads
  • IPv6: Dual-stack networking support

Pricing

# App Runner pricing (us-east-1, December 2025)

Provisioned:
  vCPU: $0.064/vCPU-hour
  Memory: $0.007/GB-hour

Active (handling requests):
  vCPU: $0.007/vCPU-hour (additional)
  Memory: $0.0008/GB-hour (additional)

# Example: 1 vCPU, 2GB RAM, 50% utilization
# Monthly: ~$60 (much cheaper than ALB + ECS)

App Runner is the fastest path from code to URL. If your workload fits (web apps, APIs), it’s the right choice.

Marcus Chen

Marcus Chen

Author & Expert

Marcus is a defense and aerospace journalist covering military aviation, fighter aircraft, and defense technology. Former defense industry analyst with expertise in tactical aviation systems and next-generation aircraft programs.

27 Articles
View All Posts