# Deploy — spaceshell.ru Front nginx (`proxy`) → landing container, plus `/download/spacesh.dmg`. ## Layout on the server (`$SSH_REMOTE_DIR`, e.g. `/opt/spacesh`) ``` docker-compose.yaml # synced by CI proxy.conf # synced by CI download/spacesh.dmg # uploaded locally via `make deploy-dmg` ``` ## One-time server setup ```bash # The landing image lives in a private registry — log the server in once: docker login git.realmanual.ru mkdir -p $SSH_REMOTE_DIR/download ``` ## What runs where - **Landing image + compose deploy** → automatic in `.gitea/workflows/build.yaml` on push to `landing/**`. CI builds/pushes the image, scps `deploy/*` to the server, then `docker compose pull && up -d`. - **DMG** → built on macOS, uploaded by hand: `make deploy-dmg` (sets the stable `download/spacesh.dmg`). Tauri can't build a macOS bundle in CI. ## Gitea secrets required `SSH_HOST`, `SSH_USER`, `SSH_REMOTE_DIR`, `SSH_KEY` (private key, key-based auth).