podman-knowledge-patch
Podman Knowledge Patch
Claude Opus 4.6 knows Podman through 4.x / early 5.x. This skill provides features from Podman 5.6 (2024-08-15) through 5.8 (2025-02-12).
Index
| Topic | Reference | Key features |
|---|---|---|
| Quadlet | references/quadlet.md | CLI management, multi-file install, .artifact type, new keys, REST API |
| CLI enhancements | references/cli-enhancements.md | --creds/--cert-dir, --return-on-first, --no-session, --ulimit update, kube play multi-file |
| OCI artifacts | references/artifacts.md | Stable podman artifact commands, REST API, podman inspect artifacts |
| Infrastructure | references/infrastructure.md | TLS/mTLS remote, BoltDB→SQLite migration, --swap, Rosetta disabled, compat API changes |
Quick Reference
Quadlet management commands (5.6+)
podman quadlet install myapp.container # install for current user
podman quadlet list # list installed Quadlets
podman quadlet print myapp.container # print file contents
podman quadlet rm myapp.container # remove a Quadlet
Not available with remote client.
Multi-file Quadlet install (5.8+)
Single file with multiple units separated by ---:
# FileName=app.container
[Container]
Image=myapp:latest
---
# FileName=db.container
[Container]
Image=postgres:16
podman quadlet install combined.quadlet
New Quadlet keys by version
| Version | File type | Key | Purpose |
|---|---|---|---|
| 5.7 | .container |
HttpProxy |
Control HTTP proxy forwarding into container |
| 5.7 | .pod |
StopTimeout |
Configure pod stop timeout |
| 5.7 | .build |
BuildArg |
Specify build arguments |
| 5.7 | .build |
IgnoreFile |
Specify ignore file |
| 5.7 | .kube |
(multi-YAML) | Multiple YAML files in single .kube file |
| 5.8 | .container |
AppArmor |
Set container's AppArmor profile |
OCI artifacts (stable since 5.6)
podman artifact pull oci-registry.example/myartifact:v1
podman artifact ls
podman artifact inspect myartifact
podman artifact push myartifact docker://registry/repo:tag
podman artifact rm myartifact
podman artifact add myartifact file1.tar file2.tar
podman artifact extract myartifact
Available via remote client. podman inspect can also inspect artifacts (5.7+).
Artifact REST API (5.6+)
| Method | Endpoint | Purpose |
|---|---|---|
GET |
/libpod/artifacts/json |
List artifacts |
GET |
/libpod/artifacts/{name}/json |
Inspect artifact |
POST |
/libpod/artifacts/pull |
Pull artifact |
DELETE |
/libpod/artifacts/{name} |
Remove artifact |
POST |
/libpod/artifacts/add |
Add artifact from tar |
POST |
/libpod/artifacts/{name}/push |
Push to registry |
GET |
/libpod/artifacts/{name}/extract |
Get artifact contents |
Quadlet REST API (5.8+)
| Method | Endpoint | Purpose |
|---|---|---|
POST |
/libpod/quadlets |
Install Quadlets |
GET |
/libpod/quadlets/{name}/file |
Print Quadlet file contents |
GET |
/libpod/quadlets/{name}/exists |
Check if Quadlet exists |
DELETE |
/libpod/quadlets |
Remove multiple Quadlets |
DELETE |
/libpod/quadlets/{name} |
Remove a single Quadlet |
Inline registry auth (5.7+)
podman run --creds user:pass --cert-dir /path/to/certs docker.io/myimage
Multi-file kube play (5.7+)
podman kube play app.yaml db.yaml
podman kube down app.yaml db.yaml
podman kube play --no-pod-prefix app.yaml # don't prefix container names with pod name
Wait for any container (5.7+)
podman wait --return-on-first --condition=exited ctr1 ctr2
Fast exec without session tracking (5.8+)
podman exec --no-session mycontainer ls /app
Update ulimits on running container (5.8+)
podman update --ulimit nofile=65536:65536 mycontainer
Volume ownership (5.6+)
podman volume create --uid 1000 --gid 1000 myvolume
VM swap (5.6+)
podman machine init --swap 2048 # size in megabytes
TLS/mTLS for remote connections (5.7+)
Remote client and podman system service support TLS and mTLS encryption, including client certificate authentication. podman system connection add can create TLS-encrypted TCP connections.
BoltDB → SQLite migration
- 5.6: Deprecation warning added for BoltDB users
- 5.7: Warnings visible by default
- 5.8: Auto-migrates BoltDB to SQLite on reboot. Manual migration:
podman system migrate --migrate-db
BoltDB removal planned for Podman 6.0.
Breaking changes
| Version | Change |
|---|---|
| 5.6 | Rosetta disabled by default in podman machine VMs (kernel compatibility issues) |
| 5.7 | Compat Image Inspect API: ContainerConfig field removed (use Config instead, matches Docker v1.45) |
Reference Files
| File | Contents |
|---|---|
| quadlet.md | CLI management commands, multi-file install, .artifact file type, new keys (HttpProxy, StopTimeout, BuildArg, IgnoreFile, AppArmor), REST API endpoints |
| cli-enhancements.md | --creds/--cert-dir, kube play multi-file + --no-pod-prefix, --return-on-first, --no-session, --ulimit update, --uid/--gid volumes, --swap |
| artifacts.md | Stable artifact commands, REST API endpoints, podman inspect artifact support |
| infrastructure.md | TLS/mTLS remote connections, BoltDB deprecation and auto-migration, Rosetta disabled, compat API breaking change |
More from nevaberry/nevaberry-plugins
dioxus-knowledge-patch
Dioxus changes since training cutoff (latest: 0.7.4) — Signals replacing use_state, RSX macro overhaul, server functions, asset!() system, dx CLI, Element-as-Result. Load before working with Dioxus.
46rust-knowledge-patch
Rust changes since training cutoff (latest: 1.94.0) \u2014 Rust 2024 Edition, async closures, trait upcasting, new std APIs, cargo resolver v3. Load before working with Rust.
20postgresql-knowledge-patch
PostgreSQL changes since training cutoff (latest: 18.1) — JSON_TABLE, SQL/JSON functions, MERGE RETURNING, virtual generated columns, UUIDv7, temporal PRIMARY KEY. Load before working with PostgreSQL.
16bun-knowledge-patch
Bun changes since training cutoff (latest: 1.3.10) \u2014 S3 client, built-in SQL/Redis, route-based HTTP server, CSS bundler, V8 compatibility. Load before working with Bun.
14nextjs-knowledge-patch
Next.js changes since training cutoff (latest: 16.1) — proxy.ts, \"use cache\", Cache Components, navigation hooks, typed routes, auto PageProps, React 19.2. Load before working with Next.js.
14postgis-knowledge-patch
PostGIS changes since training cutoff (latest: 3.6.1) — SFCGAL CG_* rename, ST_CoverageClean, ST_AsRasterAgg, topology bigint IDs, viewport simplification, 3D SFCGAL ops. Load before working with PostGIS.
13