YVMX Homelab

Safe operations

Small read-only checks and non-destructive service commands.

Read-only status

docker compose ls
docker ps -a --format 'table {{.Names}}\t{{.Image}}\t{{.Status}}\t{{.Ports}}'
docker stats --no-stream
docker system df
df -hT / /mnt/BackupDrive
systemctl --type=service --state=running --no-pager

Inspect a Compose project

docker compose -f /home/yvm/codes/cliproxyapi-dashboard/docker-compose.local.yml \
  -f /home/yvm/codes/cliproxyapi-dashboard/docker-compose.lan.yml config --services

docker compose -f /home/yvm/codes/cliproxyapi-dashboard/docker-compose.local.yml \
  -f /home/yvm/codes/cliproxyapi-dashboard/docker-compose.lan.yml ps

Use the same pattern with the project’s own Compose file. config --services is the quickest way to catch an accidental second stack.

Start and stop

# Start the active CLIProxyAPI stack
docker compose -f /home/yvm/codes/cliproxyapi-dashboard/docker-compose.local.yml \
  -f /home/yvm/codes/cliproxyapi-dashboard/docker-compose.lan.yml up -d

# Stop containers without deleting volumes
docker compose -f /home/yvm/codes/cliproxyapi-dashboard/docker-compose.local.yml \
  -f /home/yvm/codes/cliproxyapi-dashboard/docker-compose.lan.yml stop

Use stop for routine power reduction. Use down only when the project owner has checked its volumes and network dependencies. Never append -v for a stateful stack.

Backup and recovery

The CLIProxyAPI repository already contains backup and restore scripts under /home/yvm/codes/cliproxyapi-dashboard/scripts. Read the script and its prompt before running it. Keep backup destination decisions explicit; this pass did not copy anything to the HDD.

Change discipline

Before changing a service, capture docker compose ls, docker ps -a, docker system df, and df -hT. After changing it, capture the same four outputs and a health check. This makes rollback and energy comparisons possible.

On this page