Skip to content

feat: Add Fly.io deployment configuration and GitHub Actions workflow#4

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

feat: Add Fly.io deployment configuration and GitHub Actions workflow#4
StuartF303 merged 1 commit intomainfrom
claude/fly-io-deployment-011CUpsFKnx2JFyoEDjhfgbz

Conversation

@StuartF303
Copy link
Copy Markdown
Owner

This adds complete Fly.io cloud deployment support with automatic GitHub Actions deployment.

New Files:

  • fly.api.toml: Fly.io configuration for API backend
  • fly.web.toml: Fly.io configuration for Web frontend
  • docker/Dockerfile.api.prod: Production API Dockerfile (port 8080)
  • docker/Dockerfile.web.prod: Production Web Dockerfile with nginx
  • docker/nginx.prod.conf: Nginx config template with API URL substitution
  • .github/workflows/deploy-fly.yml: GitHub Actions deployment workflow
  • DEPLOYMENT.md: Quick deployment reference guide
  • docs/deployment/fly-io-deployment.md: Comprehensive Fly.io deployment guide

Features:

  • Two-app architecture (API + Web) for optimal resource usage
  • Auto-scaling: Scale to zero when idle, auto-start on request
  • GitHub Actions auto-deployment on push to main
  • Environment variable support for API URL configuration
  • Health checks for both API and Web
  • Minimal resource usage (512MB API, 256MB Web) to fit free tier

Configuration:

  • Primary region: iad (Ashburn, Virginia)
  • API: 1 shared CPU, 512MB RAM, port 8080
  • Web: 1 shared CPU, 256MB RAM, port 8080
  • HTTPS enforced on both applications

Deployment:

  • Manual: flyctl deploy --config fly.api.toml
  • Auto: Push to main branch (requires FLY_API_TOKEN secret)

Documentation:

  • Updated README.md with cloud deployment section
  • Full deployment guide with troubleshooting
  • GitHub Actions setup instructions
  • Cost optimization tips

This adds complete Fly.io cloud deployment support with automatic GitHub Actions deployment.

New Files:
- fly.api.toml: Fly.io configuration for API backend
- fly.web.toml: Fly.io configuration for Web frontend
- docker/Dockerfile.api.prod: Production API Dockerfile (port 8080)
- docker/Dockerfile.web.prod: Production Web Dockerfile with nginx
- docker/nginx.prod.conf: Nginx config template with API URL substitution
- .github/workflows/deploy-fly.yml: GitHub Actions deployment workflow
- DEPLOYMENT.md: Quick deployment reference guide
- docs/deployment/fly-io-deployment.md: Comprehensive Fly.io deployment guide

Features:
- Two-app architecture (API + Web) for optimal resource usage
- Auto-scaling: Scale to zero when idle, auto-start on request
- GitHub Actions auto-deployment on push to main
- Environment variable support for API URL configuration
- Health checks for both API and Web
- Minimal resource usage (512MB API, 256MB Web) to fit free tier

Configuration:
- Primary region: iad (Ashburn, Virginia)
- API: 1 shared CPU, 512MB RAM, port 8080
- Web: 1 shared CPU, 256MB RAM, port 8080
- HTTPS enforced on both applications

Deployment:
- Manual: flyctl deploy --config fly.api.toml
- Auto: Push to main branch (requires FLY_API_TOKEN secret)

Documentation:
- Updated README.md with cloud deployment section
- Full deployment guide with troubleshooting
- GitHub Actions setup instructions
- Cost optimization tips
@StuartF303 StuartF303 merged commit cc49b04 into main Nov 6, 2025
4 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