PodWarden
PodWarden Hub

Stack Templates

Browse and understand stack templates in the Hub catalog

Applications and Stacks

The Hub catalog is organized as Applications containing one or more Stacks.

  • An Application is the top-level catalog entry (e.g., "Redmine", "Nextcloud"). It has a name, slug, description, icon, and category.
  • A Stack is a deployment option for that application. Each application has at least one stack — usually a Single Service (one container). Some applications also offer a Compose Stack (multi-service docker-compose.yml template).

When browsing the catalog, you see applications. When installing or importing, you select which stack to use.

Browsing Templates

Navigate to Dashboard → Templates or the public Catalog page to browse stack templates. Templates are organized by category and include everything needed to deploy a containerized workload.

Search

Use the search bar to filter templates by name, description, or image name. Search updates results in real-time.

Category Grouping

Templates are grouped by category (e.g. "AI & Machine Learning", "Databases", "Monitoring"). Each category section shows a category name with icon, template count, and all templates in that category.

Template Cards

Each template card shows:

FieldDescription
NameTemplate display name
DescriptionShort description of the workload
ImageContainer image name and tag
CPUCPU resource request
RAMMemory resource request
GPUGPU count (if applicable)
BadgesFeatured, Public/Private, category

Values like 100m (CPU) and 128Mi (RAM) use Kubernetes resource notation. See Understanding Resource Requirements for what these numbers mean.

Template Details

Click a template to see its full specification:

Tags

Colored badges showing template tags (e.g. ai, llm, gpu, database). Tags help identify template capabilities at a glance.

Metadata

FieldDescription
KindWorkload type: deployment, job, or daemonset
Concurrent JobsMax parallel instances (for job workloads)
Min TierMinimum subscription tier required
DownloadsNumber of times this template has been installed

Static Environment Variables

Fixed key-value pairs set when the template is deployed:

OLLAMA_HOST = 0.0.0.0
LOG_LEVEL = info

Configurable Environment Variables

Variables that operators can customize before deployment. Each shows:

  • Variable name — The environment variable key
  • Required — Whether the variable must be set (amber "required" badge) or is optional (blue "optional" badge)
  • Default value — Pre-filled value if not overridden
  • Description — What the variable controls
  • Generate — Whether the installer can auto-generate this value (e.g. passwords, secret keys)

Example:

POSTGRES_PASSWORD (required, generate: password)
  Database superuser password — auto-generated on install

POSTGRES_DB (optional, default: app)
  Default database name

Auto-generated secrets

Some environment variables have a generate hint that tells the installer how to create a random value automatically. Supported strategies:

StrategyOutputUse for
password18-byte alphanumericUser-facing passwords
hex1616-byte hex stringShort tokens
hex3232-byte hex stringAPI keys
hex6464-byte hex stringEncryption keys, Rails secret keys
base6432-byte base64 stringGeneric secrets
uuidUUID v4Unique identifiers

When you install via the one-click installer, variables with generate hints are filled in automatically using openssl rand. You can disable this with --no-generate-secrets.

Ports

Container ports that the workload exposes:

3000/TCP
8080/TCP

Volumes

Volume mounts for persistent data:

data → /var/lib/app/data
files → /usr/src/redmine/files

Network Requirements

Network types the target cluster must support (e.g. public, mesh, lan). See Networking.

Documentation

Markdown documentation included with the template — usage instructions, configuration examples, and tips.

Installing from the Catalog

The catalog offers two ways to run a template on your own server:

One-Click Installer (Docker Compose)

Click the Self-host with Docker button on any template detail page to open the install modal. It provides a one-line command:

curl -fsSL https://www.podwarden.com/api/v1/catalog/install/redmine/script | bash

The installer:

  1. Downloads a .tar.gz bundle containing docker-compose.yml, .env.example, and any config files
  2. Extracts to your chosen directory (default: /opt/<app-slug>/)
  3. Copies .env.example to .env
  4. Auto-generates secrets for variables with generate hints (passwords, keys)
  5. Runs docker compose up -d

Advanced options in the install modal:

OptionDescription
Stack selectorChoose between single service and compose stack (if multiple stacks exist)
Install directoryOverride the default /opt/<app-slug>/ path
Auto-generate secretsToggle automatic secret generation (on by default)

You can also click Download bundle manually to get the .tar.gz without running the script.

Prerequisites: Docker and Docker Compose must be installed on the target server.

Import to PodWarden Instance

If you run PodWarden for cluster management, you can import templates into your instance instead:

  1. Connect your PodWarden instance to Hub (see Connecting to Hub)
  2. In PodWarden, go to stacks → Import from Hub
  3. Browse the catalog and click Import on any template
  4. PodWarden creates a local stack with all template fields
  5. Deploy to any cluster from the deployments page

Template Visibility

What templates you see depends on your authentication:

Auth MethodVisibility
No authPublic templates in non-private categories
Signed in (admin)All templates — public, private, all orgs
API key (org)Public templates + org-owned + private categories with access grant

Private Templates

Templates in private categories are only visible to organizations with an explicit access grant. Contact the Hub administrator to request access.