Files
spaceshell/deploy
vasyansk 4c9eacccb7 fix(deploy): put landing on proxy's network + runtime DNS resolve
The landing service had no networks: key, so it joined the auto 'default'
network while proxy was only on spaceshell-network + webproxy — they shared no
network, so proxy_pass to 'landing' couldn't resolve. With a static
upstream{ server landing:80 } nginx fails to boot on an unresolvable name and
restart-loops, so the proxy flapped (page intermittently up/down). Fixes:
- landing now joins spaceshell-network (shared with proxy).
- proxy.conf resolves 'landing' at request time via Docker DNS (127.0.0.11)
  using a variable proxy_pass, so nginx starts even if landing is briefly down.
nginx -t passes.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-15 14:20:33 +07:00
..
2026-06-15 13:47:50 +07:00

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

# 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).