Your First Deployment
This guide walks you through deploying a Docker container (nginx) to AppBahn. You can follow along using the web console or the CLI.
Prerequisites
Section titled “Prerequisites”- An AppBahn instance running on your Kubernetes cluster
- A workspace, project, and environment already created (see Getting Started)
Step 1: Navigate to Your Environment
Section titled “Step 1: Navigate to Your Environment”Console
Section titled “Console”- Open the AppBahn console
- Select your workspace
- Select your project
- Select your environment
appbahn env list --project your-project-slugStep 2: Create a Resource
Section titled “Step 2: Create a Resource”Console
Section titled “Console”- Click + Create Resource
- Fill in the form:
- Name:
my-nginx - Type: Deployment
- Image:
nginx - Tag:
1.27 - Port:
80
- Name:
- Click Create Resource
appbahn resource create \ --name my-nginx \ --type deployment \ --env your-env-slug \ --image nginx:1.27 \ --port 80 \ --expose ingressStep 3: Watch It Deploy
Section titled “Step 3: Watch It Deploy”The resource starts in PENDING status. The AppBahn operator creates a Kubernetes Deployment, Service, and Ingress for your container.
Console
Section titled “Console”The resource list polls automatically. Watch the status badge change from PENDING to READY.
appbahn resource get my-nginx-abc12efReplace the slug with the one returned from the create command.
Step 4: Trigger a Deployment
Section titled “Step 4: Trigger a Deployment”To update the running container (e.g., after pushing a new image tag):
Console
Section titled “Console”- Navigate to the resource detail page
- Click Deploy
appbahn deploy trigger my-nginx-abc12efStep 5: Verify
Section titled “Step 5: Verify”Once the status is READY, the deployment is accessible. If ingress is enabled, visit the domain shown in the resource detail page.
appbahn deploy list my-nginx-abc12efWhat Happens Under the Hood
Section titled “What Happens Under the Hood”POST /resourcesvalidates quotas and license limits, then creates a Kubernetes Custom Resource (CRD)- The AppBahn operator watches for new Resource CRDs
- The operator creates a Deployment, Service, and (if
expose: ingress) an Ingress - The operator monitors pod health and syncs status back to the platform API
- The web console and CLI read the cached status for display
Next Steps
Section titled “Next Steps”- Resource Types — Available types and configuration options
- Concepts — Architecture and design overview