mirror of
https://github.com/BrenBroZAYT/uptime-kuma-discord-bot.git
synced 2026-06-13 16:40:03 +00:00
initial commit
This commit is contained in:
+184
@@ -0,0 +1,184 @@
|
||||
# Deploy to Fly.io
|
||||
|
||||
Deploy your Uptime Kuma Discord Bot to Fly.io with minimal resources (free tier compatible).
|
||||
|
||||
## Prerequisites
|
||||
|
||||
- Fly.io account (sign up at https://fly.io)
|
||||
- Fly CLI installed (`brew install flyctl` or see https://fly.io/docs/hands-on/install-flyctl/)
|
||||
- Discord bot token
|
||||
- Uptime Kuma credentials
|
||||
|
||||
## Quick Deploy
|
||||
|
||||
### 1. Clone and Navigate
|
||||
|
||||
```bash
|
||||
git clone https://github.com/jakedev796/uptime-kuma-discord-bot
|
||||
cd uptime-kuma-discord-bot
|
||||
```
|
||||
|
||||
### 2. Login to Fly.io
|
||||
|
||||
```bash
|
||||
fly auth login
|
||||
```
|
||||
|
||||
### 3. Deploy
|
||||
|
||||
```bash
|
||||
fly launch --copy-config --auto-confirm --ha=false --name your-unique-bot-name --now
|
||||
```
|
||||
|
||||
This will:
|
||||
- Create the app with minimal resources (256MB RAM, 1 shared CPU)
|
||||
- Create a 1GB volume for persistent data
|
||||
- Deploy the bot immediately
|
||||
|
||||
### 4. Set Secrets
|
||||
|
||||
```bash
|
||||
fly secrets set \
|
||||
DISCORD_BOT_TOKEN=your_discord_bot_token_here \
|
||||
UPTIME_KUMA_URL=https://your-uptime-kuma-url.com \
|
||||
UPTIME_KUMA_USERNAME=admin \
|
||||
UPTIME_KUMA_PASSWORD=your_password_here \
|
||||
ADMIN_USER_IDS=your_discord_user_id
|
||||
```
|
||||
|
||||
The bot will automatically restart with the new secrets.
|
||||
|
||||
### 5. Verify Deployment
|
||||
|
||||
```bash
|
||||
fly logs # Check startup logs
|
||||
fly status # Verify it's running
|
||||
```
|
||||
|
||||
### 6. Configure in Discord
|
||||
|
||||
```
|
||||
/set-channel #status
|
||||
/set-title Production Services
|
||||
/track-all
|
||||
```
|
||||
|
||||
Done! Your bot is running on Fly.io!
|
||||
|
||||
## Configuration
|
||||
|
||||
The `fly.toml` is pre-configured for minimal resources:
|
||||
- **CPU**: 1 shared CPU
|
||||
- **Memory**: 256MB (minimal but sufficient for this bot)
|
||||
- **Volume**: 1GB for persistent configuration
|
||||
- **Region**: `iad` (Ashburn, VA - change if needed)
|
||||
- **Always on**: `auto_stop_machines = false` and `min_machines_running = 1`
|
||||
- **Single instance**: `ha = false` (no high availability needed)
|
||||
|
||||
## Managing Your Deployment
|
||||
|
||||
### View Logs
|
||||
|
||||
```bash
|
||||
fly logs
|
||||
```
|
||||
|
||||
### Check Status
|
||||
|
||||
```bash
|
||||
fly status
|
||||
```
|
||||
|
||||
### Scale Resources (if needed)
|
||||
|
||||
```bash
|
||||
fly scale memory 512 # Increase to 512MB
|
||||
fly scale count 1 # Ensure single instance
|
||||
```
|
||||
|
||||
### Update Secrets
|
||||
|
||||
```bash
|
||||
fly secrets set UPTIME_KUMA_PASSWORD=new_password
|
||||
```
|
||||
|
||||
### Redeploy After Code Changes
|
||||
|
||||
```bash
|
||||
fly deploy
|
||||
```
|
||||
|
||||
### SSH into the App
|
||||
|
||||
```bash
|
||||
fly ssh console
|
||||
```
|
||||
|
||||
## Costs
|
||||
|
||||
With this configuration:
|
||||
- **Shared CPU-1x @ 256MB**: ~$1.94/month
|
||||
- **1GB Volume**: Free (3GB included)
|
||||
- **Bandwidth**: Free (100GB included)
|
||||
|
||||
**Total**: ~$2/month or free with Fly.io credits
|
||||
|
||||
## Regions
|
||||
|
||||
Change the region in `fly.toml` if needed:
|
||||
- `iad` - Ashburn, Virginia (US)
|
||||
- `lhr` - London, UK
|
||||
- `fra` - Frankfurt, Germany
|
||||
- `syd` - Sydney, Australia
|
||||
- `nrt` - Tokyo, Japan
|
||||
|
||||
Full list: https://fly.io/docs/reference/regions/
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### Bot not starting
|
||||
|
||||
```bash
|
||||
fly logs # Check for errors
|
||||
fly status # Verify it's running
|
||||
```
|
||||
|
||||
### Update environment variables
|
||||
|
||||
```bash
|
||||
fly secrets list # See all secrets
|
||||
fly secrets set KEY=value
|
||||
```
|
||||
|
||||
### Bot keeps restarting
|
||||
|
||||
- Check memory usage: `fly scale show`
|
||||
- Increase if needed: `fly scale memory 512`
|
||||
- Check logs for errors: `fly logs`
|
||||
|
||||
### Volume issues
|
||||
|
||||
```bash
|
||||
fly volumes list # List volumes
|
||||
fly volumes delete bot_data # Delete if needed
|
||||
fly volumes create bot_data --size 1 # Recreate
|
||||
```
|
||||
|
||||
## Cleanup
|
||||
|
||||
To delete the app:
|
||||
|
||||
```bash
|
||||
fly apps destroy your-app-name
|
||||
```
|
||||
|
||||
## Support
|
||||
|
||||
For Fly.io specific issues:
|
||||
- Fly.io Docs: https://fly.io/docs/
|
||||
- Fly.io Community: https://community.fly.io/
|
||||
|
||||
For bot issues:
|
||||
- Check [README.md](README.md)
|
||||
- Open GitHub issue
|
||||
|
||||
Reference in New Issue
Block a user