PodWarden
User ManualPodWarden Hub

Admin: Templates

Full template CRUD with create/edit modal for images, resources, environment variables, config slots, and markdown content

What you see

URL: /dashboard/admin/templates (list), /dashboard/admin/templates/[id] (detail)

Requires admin or superadmin role.

The Admin Templates page provides full create, read, update, and delete operations for the template catalog. The layout mirrors the user-facing Templates page (search bar, category sidebar, template grid with sort and pagination) but adds admin-specific actions: a "Create Template" button, edit/delete controls on each template card, and a comprehensive create/edit form.

List view

  • Search bar — Full-text search with 300ms debounce.
  • Category sidebar — Filter by category with template counts.
  • Sort dropdown — Most Popular, Recently Updated, Name A-Z, Newest.
  • Template grid — Cards with edit and delete action buttons (admin variant).
  • Pagination — 50 templates per page.

Detail view

URL: /dashboard/admin/templates/[id]

Clicking a template card opens the dedicated admin detail/edit page with all fields editable in sections.

Available actions

ActionWhereWhat it does
Create TemplatePage header buttonOpens the create form with empty fields
EditClick a template cardOpens the detail/edit page
DeleteDelete button on cardDeletes the template after confirmation
SearchSearch barFilters templates by name and description
Filter by categoryCategory sidebarShows only templates in the selected category
SortSort dropdownChanges the sort order

Create/Edit form fields

Application

Every template (stack) belongs to an Application. When creating a template, you must select or create an application first.

FieldDescription
ApplicationParent application this stack belongs to (required)
Stack Typesingle_service (one container) or compose_stack (multi-service docker-compose)
Stack LabelDisplay label for this stack variant (e.g. "With PostgreSQL", "Standalone")

Basic information

FieldDescription
NameTemplate display name (required)
CategoryDropdown of all categories, or "None"
DescriptionMulti-line text description

Container image

FieldDescription
Image NameDocker image name (e.g. nvidia/cuda) (required)
Image TagImage tag (e.g. latest). Optional, defaults to latest.

Resource requirements

FieldDescription
CPU RequestKubernetes CPU request (e.g. 500m)
Memory RequestKubernetes memory request (e.g. 4Gi)
GPU CountNumber of GPUs required (0 for none)

Access and visibility

FieldDescription
Min TierMinimum pricing tier required: Free, Pro, or Enterprise
PublicCheckbox. If checked, visible in the public catalog.
FeaturedCheckbox. If checked, appears in featured template lists.
PodWarden ApprovedCheckbox. Marks the template as reviewed and approved.
Security AuditedCheckbox. Marks the template as security audited.

Networking

FieldDescription
Host NetworkCheckbox. Enables host networking (one pod per node). Shows a warning when enabled.
Required Network TypesCheckboxes for public, mesh, lan. Clusters must support these network types to deploy the template.

Static environment variables

Key-value pairs baked into the template. Users cannot change these at deploy time.

FieldDescription
NAMEVariable name
valueVariable value

Configurable environment variables (schema)

Variables that users can customize when deploying. Each entry has:

FieldDescription
VAR_NAMEVariable name
RequiredCheckbox. If checked, deployment requires a value.
Default valuePre-filled value
DescriptionHelp text shown to users
GenerateAuto-generation strategy for secrets. Options: password, hex16, hex32, hex64, base64, uuid. When set, the one-click installer auto-generates a random value if the field is empty.

The generate field is what enables the "Auto-generate secrets" checkbox in the install command modal. If no env vars have a generate hint, the checkbox does not appear.

Config file slots (schema)

Allow users to mount configuration files into the container. Each slot has:

FieldDescription
Display nameHuman-readable name (e.g. "GitLab Configuration")
Unique keyMachine-readable key (e.g. gitlab_rb)
Mount pathContainer path (e.g. /etc/gitlab/gitlab.rb)
File typeDropdown: yaml, toml, json, ini, conf, rb, xml, env, plaintext
RequiredCheckbox
DescriptionHelp text
Default contentPre-filled file content

Security context

Container-level security settings:

FieldDescription
PrivilegedRun the container with elevated privileges
Capabilities AddLinux capabilities to add (e.g. NET_ADMIN)
Capabilities DropLinux capabilities to remove

Health probes

Liveness, readiness, and startup probes:

FieldDescription
Probe typehttpGet, tcpSocket, or exec
Path/Port/CommandProbe target
Period/Timeout/ThresholdTiming configuration

Compose stack fields

For templates with stack type compose_stack:

FieldDescription
Compose SourceRaw docker-compose.yml content
Compose ServicesExtracted service list (name, image, is_primary)
Compose ScriptsPre/post deployment scripts

Content

FieldDescription
AuthorTemplate author or maintainer name
Author URLLink to author's website or project page
Documentation URLLink to external documentation
Content Page (Markdown)GFM markdown content with Write/Preview toggle. Supports tables, task lists, and strikethrough.

Related docs