How to connect to the SpaceMusic Server and navigate the infrastructure.
Server Specs¶
| Spec | Value |
|---|---|
| Provider | Hetzner EX44 (dedicated) |
| CPU | Intel Core i5-13500 |
| RAM | 64 GB DDR4 |
| Storage | 2x 512 GB NVMe SSD (RAID 1) |
| Network | 1 Gbit/s uplink |
| IP | 136.243.124.138 (fixed) |
| OS | Ubuntu 22.04 LTS |
SSH Access¶
Connect via SSH using an ed25519 key:
ssh root@136.243.124.138
To simplify access, add an alias to ~/.ssh/config:
Host spacemusic
HostName 136.243.124.138
User root
IdentityFile ~/.ssh/spacemusic
Then connect with:
ssh spacemusic
Getting your SSH key added
Contact an admin to add your public key to /root/.ssh/authorized_keys on the server. Only ed25519 keys are accepted.
Directory Layout¶
All services live under /opt/spacemusic/ on the server:
| Path | Service |
|---|---|
/opt/spacemusic/auth/spacemusic-auth/ |
Authentik SSO |
/opt/spacemusic/dashboard/spacemusic-dashboard/ |
Grafana monitoring stack |
/opt/spacemusic/storage/spacemusic-storage/ |
MinIO object storage |
/opt/spacemusic/relay/spacemusic-relay/ |
Centrifugo relay |
/opt/spacemusic/uptime/spacemusic-uptime/ |
Kuvasz uptime monitoring |
/opt/spacemusic/api/spacemusic-api/ |
API gateway |
devpush-managed services (Stream, Docs, UWD editors) are deployed into devpush's internal container runtime and don't have a path under /opt/spacemusic/.
Traefik dynamic config files live at /var/lib/devpush/traefik/.
Docker¶
All services run as Docker containers. Useful commands:
# List running containers
docker ps
# View logs for a service (follow mode)
cd /opt/spacemusic/dashboard/spacemusic-dashboard/
docker compose logs -f grafana
# Check resource usage
docker stats
# Restart a service
docker compose restart
What is devpush?¶
devpu.sh is the self-hosted deployment platform used for SvelteKit and Python apps. It provides:
- Automatic deploys on push to
mainvia GitHub webhook - Built-in Traefik integration for HTTPS routing
- Python and Node.js 20 runners
The devpush admin UI is at deploy.spacemusic.tv. See Deployment for the full project list and deployment details.