Skip to content

Claude/fly io deployment 011 c ups f knx2 j fyo e djhfgbz#5

Merged
StuartF303 merged 2 commits intomainfrom
claude/fly-io-deployment-011CUpsFKnx2JFyoEDjhfgbz
Nov 6, 2025
Merged

Claude/fly io deployment 011 c ups f knx2 j fyo e djhfgbz#5
StuartF303 merged 2 commits intomainfrom
claude/fly-io-deployment-011CUpsFKnx2JFyoEDjhfgbz

Conversation

@StuartF303
Copy link
Copy Markdown
Owner

No description provided.

Changed from two-app deployment (API + Web) to single container deployment
for simplified architecture and reduced resource usage.

New Architecture:
- Single Fly.io application with unified endpoint
- Nginx (port 8080) serves Blazor WASM static files
- Nginx proxies /api and /hubs to .NET API (port 5000)
- Supervisord manages both processes in one container
- Single IP/CNAME with all traffic on one endpoint

New Files:
- fly.toml: Single application configuration (replaces fly.api.toml + fly.web.toml)
- docker/Dockerfile.combined: Multi-stage build for API + Web
- docker/nginx.combined.conf: Nginx config with API proxy
- docker/supervisord.conf: Process manager for nginx + API

Updated Files:
- .github/workflows/deploy-fly.yml: Single deployment job
- DEPLOYMENT.md: Updated for combined deployment
- README.md: Updated quick start with single URL
- docs/deployment/fly-io-deployment.md: Complete rewrite for new architecture

Removed Complexity:
- No need for separate API and Web apps
- No cross-app networking configuration
- No API URL environment variable management
- Single endpoint simplifies CORS and networking

Benefits:
- Simpler deployment: Single `flyctl deploy` command
- Lower cost: 1024MB RAM (vs 768MB split across 2 apps)
- Better resource utilization
- Easier debugging and monitoring
- Single URL for users: https://vandaemon.fly.dev

Access:
- Web: https://vandaemon.fly.dev/
- API: https://vandaemon.fly.dev/api
- SignalR: https://vandaemon.fly.dev/hubs
Removed old two-app deployment files that are no longer needed:
- fly.api.toml (replaced by fly.toml)
- fly.web.toml (replaced by fly.toml)
- docker/Dockerfile.api.prod (replaced by docker/Dockerfile.combined)
- docker/Dockerfile.web.prod (replaced by docker/Dockerfile.combined)
- docker/nginx.prod.conf (replaced by docker/nginx.combined.conf)

The new single-container deployment is more efficient and simpler to maintain.
@StuartF303 StuartF303 merged commit 401ac61 into main Nov 6, 2025
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants