Skip to main content
CNAP supports three flexible ways to deploy your applications as products. Each method is designed for different use cases and deployment scenarios.

Source Types

Helm Charts

Deploy battle-tested applications from the vast Helm ecosystem via Artifact Hub.

Benefits

  • Production-ready - Pre-configured applications maintained by the community
  • Rich ecosystem - Thousands of applications for databases, web servers, monitoring tools, and more
  • Customizable - Configure applications using Helm values
  • Verified publishers - Many charts come from trusted, verified sources

Best For

  • Standard software stacks (PostgreSQL, Redis, NGINX, WordPress, Grafana, etc.)
  • Enterprise applications with complex configurations
  • Applications requiring sophisticated Kubernetes deployments
  • Teams leveraging existing Helm knowledge

How It Works

  1. Search Artifact Hub directly in the product creation flow
  2. Select from popular applications or search for specific packages
  3. CNAP automatically handles Helm chart deployment to your clusters
  4. Configure pricing and make it available to customers
Look for charts with verified publisher badges for added reliability and security.

GitHub Repositories

Deploy applications directly from your GitHub repositories with automatic builds using Nixpacks. Connect your GitHub accounts and organizations for seamless access to your repositories.

Benefits

  • Source-to-deployment - Push code, get containerized applications
  • Auto-detection - Nixpacks automatically detects your language and framework
  • No Dockerfile needed - Smart defaults for Node.js, Python, Go, Ruby, and more
  • CI/CD friendly - Integrates with your development workflow
  • Secure Authentication - GitHub App provides secure access without personal tokens
  • Team Collaboration - Share repository access across workspace members

Best For

  • Custom applications and APIs
  • Rapid development and iteration
  • Modern web frameworks (Next.js, SvelteKit, FastAPI, Django, etc.)
  • Monorepos and microservices
  • Team projects and organization repositories

How It Works

  1. Connect GitHub Account - Install the CNAP GitHub App to your account or organization
  2. Select Repositories - Choose which repositories to make available to your workspace
  3. Auto-Build - Nixpacks analyzes your code and determines the build process
  4. Deploy - CNAP builds and packages your application automatically
  5. Product Creation - Deploy to your selected clusters and make it available as a product
Nixpacks supports 10+ languages and frameworks out of the box, with no configuration required for most projects.

GitHub App Integration

CNAP uses a GitHub App for secure, scoped access to your repositories. This provides several advantages over personal access tokens:
  • Enhanced Security - No need to store personal access tokens
  • Granular Permissions - Control exactly which repositories are accessible
  • Team Access - All workspace members can use connected repositories
  • Multiple Accounts - Connect both personal and organization accounts
  • Revocable Access - Easily manage and revoke repository access

Connect GitHub Account

Get started by connecting your GitHub account or organization

Supported Languages & Frameworks

  • Node.js - Express, Next.js, SvelteKit, Remix, Nuxt
  • Python - Django, FastAPI, Flask
  • Go - Gin, Echo, Chi
  • Ruby - Rails, Sinatra
  • Java - Spring Boot, Quarkus
  • Rust - Actix, Rocket, Axum
  • PHP - Laravel, Symfony
  • And more!

Docker Images

Deploy pre-built container images from any public registry.

Benefits

  • Full control - You manage the entire build process
  • Any language - Use any programming language or stack
  • Existing images - Leverage images you’ve already built
  • Registry flexible - Works with Docker Hub, GHCR, or any public registry

Best For

  • Legacy applications with complex build requirements
  • Multi-stage builds with specific optimizations
  • Images requiring special dependencies or configurations
  • Teams with established Docker workflows

How It Works

  1. Provide your container image URL
  2. CNAP pulls the image from the registry
  3. Deploy to your selected clusters
  4. Configure pricing and availability

Image Format

Specify images using standard Docker notation:
nginx:latest
redis:7-alpine
ghcr.io/owner/image:v1.2.3
docker.io/library/postgres:15
Only public images are currently supported. Private registry support is coming soon.

Choosing the Right Source

Use this guide to select the best deployment method for your use case:
Use CaseRecommended SourceWhy
Standard database (PostgreSQL, MySQL, MongoDB)Helm ChartsBattle-tested configurations, easy clustering
Custom web APIGitHub RepoFast iteration, automatic builds
Existing containerized appDocker ImageFull control, existing workflows
Open source applicationsHelm ChartsCommunity maintained, well documented
Rapid prototypingGitHub RepoQuick deployments, no container knowledge needed
MicroservicesGitHub Repo or DockerFlexible, supports both approaches

Security Considerations

  • Verify publisher badges before deployment
  • Review chart source code when possible
  • Keep charts updated for security patches
  • Use CNAP’s built-in scanning for vulnerabilities
  • Ensure repository is private if it contains secrets
  • Use environment variables for sensitive configuration
  • Review Nixpacks build logs for unexpected behavior
  • Enable branch protection on source repositories
  • Only use images from trusted registries
  • Verify image signatures when available
  • Scan images for vulnerabilities before deployment
  • Use specific version tags instead of latest

Next Steps