taskfile

Quadlet Podman — Compose → Systemd on Low-RAM VPS

Deploy via Podman Quadlet: docker-compose.yml → .container files → systemd na VPS.

Features covered

Workflow

docker-compose.yml
        ↓
taskfile quadlet generate    → deploy/quadlet/*.container
        ↓
taskfile quadlet upload      → scp → ~/.config/containers/systemd/
        ↓
systemctl --user restart     → running as rootless Podman

Usage

# Local dev
taskfile --env local run dev

# Full prod deploy (build → push → quadlet → restart)
taskfile --env prod run deploy-prod --var TAG=v1.0.0

# Or use built-in deploy command (auto strategy)
taskfile --env prod deploy --var TAG=v1.0.0

# Quadlet workflow step by step
taskfile --env prod run quadlet-generate
taskfile --env prod run quadlet-upload
taskfile --env prod run quadlet-restart

# VPS setup from scratch
taskfile setup 123.45.67.89 --domain app.example.com
# or:
taskfile --env prod run provision

# Monitoring
taskfile --env prod run logs
taskfile --env prod run status
taskfile run health

Why Quadlet?