Deploy self-hosted applications to Fly.io with a single command. Pre-configured deployments for open-source tools with automated GitHub Actions workflows.
Fork this repository or use it as a template:
- Create your repository (fork or template)
- Add
FLY_API_TOKEN
to repository secrets - (Optional) Add
ENVIRONMENT
secret for private environment suffix - Deploy via GitHub Actions or command line
The system parallelizes deployments across multiple workers automatically.
- Fly CLI installed
make
,jq
, andenvsubst
(standard tools)
Run make doctor
to verify your setup.
Tip: Disable analytics warnings with fly settings analytics disable
App | Description | Dependencies |
---|---|---|
glance | Personal dashboard | - |
kuma | Uptime monitoring | - |
librechat | AI chat interface | MongoDB |
linkding | Bookmark manager | - |
md-to-pdf | Markdown to PDF converter | - |
memos | Note-taking app | - |
ollama | Local LLM server | - |
redlib | Reddit frontend | - |
searxng | Meta search engine | Valkey |
# Authenticate with Fly.io
fly auth login
# Deploy an app
make deploy app=glance
# Deploy with environment suffix
make deploy app=glance environment=staging
# Deploy to specific region
make deploy app=glance region=fra
# Development workflow
make deploy app=memos environment=dev
make logs app=memos environment=dev
make destroy app=memos environment=dev
Command | Description | Example |
---|---|---|
help |
Show all available commands | make help |
doctor |
Verify prerequisites | make doctor |
deploy |
Deploy an app | make deploy app=glance |
status |
Check app status | make status app=glance |
logs |
View recent logs | make logs app=glance |
destroy |
Remove an app | make destroy app=glance |
Note: Apps with dependencies (e.g., librechat
, searxng
) automatically deploy required services.
# Create app structure
mkdir apps/myapp && cd apps/myapp
fly launch --no-deploy
# Deploy
make deploy app=myapp
Optional: Add documentation using the README template.
We encourage contributions to the main repository rather than maintaining separate forks. This helps the community benefit from improvements:
- Add new apps: See Adding New Apps section
- Improve existing apps: Enhance configurations, add features, fix issues
- Documentation: Improve clarity, add examples, fix errors
Contributions to this repository benefit everyone using Flyo. Submit pull requests with your improvements!
This project is licensed under the MIT License.