Skip to content

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.

  • An AppBahn instance running on your Kubernetes cluster
  • A workspace, project, and environment already created (see Getting Started)
  1. Open the AppBahn console
  2. Select your workspace
  3. Select your project
  4. Select your environment
Terminal window
appbahn env list --project your-project-slug
  1. Click + Create Resource
  2. Fill in the form:
    • Name: my-nginx
    • Type: Deployment
    • Image: nginx
    • Tag: 1.27
    • Port: 80
  3. Click Create Resource
Terminal window
appbahn resource create \
--name my-nginx \
--type deployment \
--env your-env-slug \
--image nginx:1.27 \
--port 80 \
--expose ingress

The resource starts in PENDING status. The AppBahn operator creates a Kubernetes Deployment, Service, and Ingress for your container.

The resource list polls automatically. Watch the status badge change from PENDING to READY.

Terminal window
appbahn resource get my-nginx-abc12ef

Replace the slug with the one returned from the create command.

To update the running container (e.g., after pushing a new image tag):

  1. Navigate to the resource detail page
  2. Click Deploy
Terminal window
appbahn deploy trigger my-nginx-abc12ef

Once the status is READY, the deployment is accessible. If ingress is enabled, visit the domain shown in the resource detail page.

Terminal window
appbahn deploy list my-nginx-abc12ef
  1. POST /resources validates quotas and license limits, then creates a Kubernetes Custom Resource (CRD)
  2. The AppBahn operator watches for new Resource CRDs
  3. The operator creates a Deployment, Service, and (if expose: ingress) an Ingress
  4. The operator monitors pod health and syncs status back to the platform API
  5. The web console and CLI read the cached status for display