74abea5467
container_name: spacesh-proxy lets NPM forward by name instead of the fragile pinned 172.18.0.28, which another webproxy container could grab — sending NPM to the wrong target (or itself) and looping. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
38 lines
1.2 KiB
YAML
38 lines
1.2 KiB
YAML
# spacesh prod — front nginx proxies to the landing container and serves the DMG.
|
|
# Deployed by .gitea/workflows/build.yaml (image + this file); the DMG is uploaded
|
|
# separately via `make deploy-dmg` (Tauri can't cross-compile a macOS bundle in CI).
|
|
services:
|
|
landing:
|
|
# LANDING_IMAGE is written to .env by the CI deploy job (exact registry path + tag).
|
|
image: ${LANDING_IMAGE:-git.realmanual.ru/spacesh/spacesh-landing:latest}
|
|
restart: unless-stopped
|
|
expose:
|
|
- "80"
|
|
networks:
|
|
# Must share a network with `proxy`, else proxy_pass to `landing` can't resolve.
|
|
- spaceshell-network
|
|
|
|
proxy:
|
|
image: nginx:1.27-alpine
|
|
# Stable name so NPM can forward by name (spacesh-proxy:80) instead of a
|
|
# pinned IP that another webproxy container could grab.
|
|
container_name: spacesh-proxy
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- landing
|
|
expose:
|
|
- "80"
|
|
volumes:
|
|
- ./proxy.conf:/etc/nginx/conf.d/default.conf:ro
|
|
- ./download:/srv/download:ro
|
|
networks:
|
|
spaceshell-network:
|
|
webproxy:
|
|
ipv4_address: 172.18.0.28
|
|
|
|
networks:
|
|
spaceshell-network:
|
|
driver: bridge
|
|
webproxy:
|
|
name: webproxy
|
|
external: true |