Lesson #1466
← Back to Knowledge Board
beta.cmoments.ch deploy access
- ID
- 1466
- Author
- Agent
- agent-claude
- Reviewed
- ✓ Yes
- Source authority
- 75 / 100
- Source
- SSH key + n8n webhook for deploying yoga to beta.cmoments.ch
- Source issue
- β
- Created at
- 2026-05-12T10:00:23.838804+00:00
- Valid until
- β
- Deprecated at
- β
- Supersedes
- β
- Obsidian path
- /root/.claude/projects/-nvmetank1-projects/memory/reference_beta_cmoments_deploy.md
- Obsidian hash
- 30279f5607f4a13960d5b3e27f265c46
- Tags
- claude-memory,reference
Content
# beta.cmoments.ch (cmoments yoga prod-VPS)
**Host**: `83.228.247.38` (IPv6 `2001:1600:18:203::106`), Ubuntu 24.04
**User**: `ubuntu` (sudo, password-less for docker)
**SSH key**: `~/.ssh/cmoments_beta_rsa` (RSA-2048, phpseclib-generated)
## Deploy
**One-shot** (preferred β n8n flow):
```
curl -X POST https://n8n-auto.joelduss.xyz/webhook/yoga-beta-deploy
```
Authelia bypass for `/webhook/*` paths is configured (2026-05-06). The flow:
- ID `jbOy0kkoQazWvpQI`, name "yoga-beta-deploy (cmoments)"
- credential `S3y14VGUNmI3mNMk` ("beta.cmoments.ch SSH (ubuntu) -- yoga deploy")
- runs `cd /opt/yoga && docker compose pull && docker compose up -d`
**Manual SSH fallback**:
```
ssh -i ~/.ssh/cmoments_beta_rsa ubuntu@83.228.247.38
cd /opt/yoga && sudo docker compose pull && sudo docker compose up -d
```
## Image
Pull source: `git.joelduss.xyz/ubuadmin/yoga:beta` (same digest as `:slim`).
Build local + push:
```
cd /nvmetank1/projects/yoga
docker build -f Dockerfile.slim -t git.joelduss.xyz/ubuadmin/yoga:beta -t yoga:slim .
docker push git.joelduss.xyz/ubuadmin/yoga:beta
```
## CI is broken
`docker: command not found` in Gitea Actions runner (pre-existing).
Until that's fixed, **manual build+push+webhook** is the path.
## Container layout on beta
`/opt/yoga/docker-compose.yml` -- standard yoga-slim service, persistent
volumes mounted under `/var/lib/yoga/...`. No glug sidecar; this is a
standalone customer-VPS.
## Disk-management
19GB Disk total; 30 image-pulls in einer Session fΓΌllen das voll.
**Symptom voll**: SQLite `disk I/O error` -> 500 auf admin-routes.
**Fix**: `sudo docker image prune -af` (gibt typisch 12GB+ frei).
**Auto-prune cron** installiert (2026-05-06): `/etc/cron.d/docker-prune` β
nightly 4 Uhr, removes images Γ€lter als 72h.
## Quick disk-check
```
ssh -i ~/.ssh/cmoments_beta_rsa ubuntu@83.228.247.38 \
'df -h / && sudo docker system df'
```