Managing Your Flux Applications
Learn how to monitor, manage, and troubleshoot your deployed applications using the Flux dashboard
What You'll Learn
Before You Start
- ✓ Completed the Basic Deployment tutorial
 - ✓ Have at least one deployed application on Flux
 - ✓ Access to the Zelcore wallet you used for deployment
 
Accessing Your Applications
The Flux dashboard is your central hub for managing all your deployed applications.
Navigation Steps:
- 1
Go to the Flux Home portal
https://home.runonflux.io - 2
Log in with your Zelcore wallet
Use the same wallet that deployed your application
 - 3
Navigate to "Applications" → "Management"
You'll see tabs for "My Active Apps" and "My Expired Apps"
 
Note: You can only manage applications deployed with the currently connected Zelcore wallet.
Understanding Application Status
Each application displays a status indicator that shows its current state.
Running
Application is healthy and accessible. All containers are running normally.
Starting
Application is initializing. This may take 1-3 minutes for containers to start and health checks to pass.
Restarting
Container crashed and is automatically restarting. Check logs if this persists.
Stopped / Failed
Application has stopped or failed to start. Check logs and troubleshoot the issue.
Stopped (Manual)
You manually stopped the application. It won't restart until you start it again.
Viewing Application Logs
Logs are essential for debugging issues and understanding what your application is doing.
Accessing Logs
- 1. Click on your application in the "My Active Apps" list
 - 2. Navigate to the "Logs Management" section in the left sidebar
 - 3. Select the component from the dropdown (if multi-component app)
 - 4. View logs in real-time - they update automatically
 - 5. Use the refresh button to see the latest entries
 
stdout Logs
- • Normal application output
 - • console.log() messages
 - • Request/response logging
 - • General information
 
stderr Logs
- • Error messages
 - • console.error() output
 - • Stack traces
 - • Warning messages
 
Log Tips:
- • Logs display both stdout and stderr combined in the Logs Management view
 - • Use descriptive log messages in your app for easier debugging
 - • Logs auto-refresh, but you can manually refresh to ensure latest entries
 - • For multi-component apps, switch between components using the dropdown
 
// Good logging practices
console.log('[STARTUP] Server starting on port 3000');
console.log('[DB] Connected to database successfully');
console.log('[REQUEST] GET /api/users - 200 OK');
console.error('[ERROR] Database connection failed:', error.message);
// Include timestamps if your app doesn't log them automatically
const timestamp = new Date().toISOString();
console.log(`[${timestamp}] Application started`);Monitoring Resource Usage
Keep track of how your application is using CPU, RAM, and disk space to ensure optimal performance.
Resource Metrics
In your app details page, you can view real-time resource usage metrics:
The "Monitoring" section displays these real-time graphs:
CPU Usage
- • Shows percentage of allocated CPU being used over time
 - • Consistent high usage (80%+) may indicate need to scale up
 - • Spikes are normal during traffic bursts
 
Memory Usage
- • Displays current RAM usage vs. allocated amount
 - • Running at 90%+ consistently means you should increase RAM
 - • Gradual increase over time may indicate memory leak
 
Network Usage (aggregate)
- • Shows incoming and outgoing network traffic
 - • Useful for understanding bandwidth usage patterns
 - • High traffic spikes may correlate with user activity
 
I/O Usage (aggregate)
- • Displays disk read/write operations
 - • High I/O may indicate database queries or file operations
 - • Persistent high I/O could affect performance
 
Persistent Storage
- • Shows used vs. total allocated persistent storage (containerData)
 - • Monitor if your app writes logs or user uploads
 - • Increase HDD allocation if running low (<20% free)
 
Root Filesystem (rootfs)
- • Shows space used in the container's root filesystem
 - • Separate from persistent storage volumes
 - • Filling up may indicate app writing to non-persistent locations
 
Processes
- • Shows running processes inside your container
 - • Useful for debugging unexpected processes
 - • Can help identify zombie processes or runaway tasks
 
Performance Tip:
If you consistently use 80%+ of allocated resources, consider updating your app specification to increase CPU, RAM, or HDD.
Managing Application Lifecycle
You can perform various actions to manage your running applications.
In the "Application Control" section, you'll find these action buttons:
Start Application
When to use: Resume a stopped application
- • Starts containers that were manually stopped
 - • App becomes accessible again at its URL
 - • Persistent data is preserved from before it was stopped
 
Stop Application
When to use: Temporarily disable app or save FLUX costs
- • Stops all containers without deleting the app
 - • App becomes inaccessible but data is preserved
 - • Stops FLUX payments for compute resources
 - • Can start anytime to resume service
 
Restart Application
When to use: When app is stuck or to clear memory
- • Gracefully stops and restarts all containers
 - • Brief downtime (30-60 seconds typically)
 - • Persistent data (with containerData) is preserved
 - • Useful for clearing temporary issues
 
Pause / Unpause Application
When to use: Temporarily freeze app execution without stopping
- • Pauses all processes in the container
 - • Different from Stop - container remains in memory
 - • Unpause resumes exactly where it left off
 - • Quick way to temporarily suspend without full restart
 
Soft Reinstall
When to use: Refresh container while preserving data
- • Recreates container from the same image
 - • Preserves containerData volumes
 - • Useful for applying minor fixes or refreshing state
 - • Less disruptive than hard reinstall
 
Hard Reinstall
When to use: Complete fresh start with persistent data
- • Completely removes and recreates container
 - • Preserves containerData but clears everything else
 - • More thorough than soft reinstall
 - • Use when soft reinstall doesn't resolve issues
 
Remove Application
⚠️ Permanent action - cannot be undone!
- • Completely removes the application from Flux
 - • All data is deleted (including containerData volumes)
 - • Stops FLUX payments immediately
 - • You'll need to redeploy from scratch to restore
 
Best Practice: Always backup important data before stopping, updating, or deleting applications. Use containerData with appropriate volume prefixes for data that must persist.
Advanced Management Features
The Flux dashboard provides several powerful features for managing your applications beyond basic operations.
Interactive Terminal
Access a shell inside your running container directly from the browser. Useful for debugging, inspecting files, or running commands.
- • Choose shell type: sh, bash, or ash (depending on your container)
 - • Run commands interactively in your container environment
 - • Inspect logs, check processes, or troubleshoot issues
 - • View environment variables and file system state
 
Backup and Restore
Create backups of your persistent data and restore them when needed. Critical for protecting important application data.
- Backup: Creates a snapshot of all containerData volumes
 - Restore: Restores data from a previous backup point
 - Use cases: Before major updates, regular data protection, disaster recovery
 
Running Instances Map
View a world map showing the geographic distribution of nodes running your application instances.
- • Visual map showing where your app is deployed globally
 - • See which Flux nodes are running your containers
 - • Understand geographic redundancy and distribution
 - • Monitor individual instance health per node
 
Update / Renew Subscription
Modify your application's deployment specification or extend the subscription period using a slider interface.
- Update Spec: Modify Docker image, resources (CPU/RAM/HDD), ports, environment variables
 - Renew: Extend subscription period with the slider - longer periods ensure continuity
 - Resource Changes: Adjust allocated resources as your needs change
 - Version Updates: Deploy new versions by changing the repotag
 
Viewing Application Details
The app details page shows comprehensive information about your deployment.
Deployment Information
- App Name:myapp
 - Version:4
 - Image:user/app:latest
 - Status:Running
 
Resource Allocation
- CPU:2.0 cores
 - RAM:4000 MB
 - Storage:20 GB
 - Monthly Cost:~150 FLUX
 
Network Information
- Public URL:myapp.app.runonflux.io
 - Ports:80 → 3000
 
Running Instances
Shows which Flux nodes are running your app
- • Geographic distribution
 - • Node IP addresses
 - • Individual instance health
 
Common Management Tasks
Deploying a New Version
- 1. Build and push new Docker image with updated tag
 - 2. Go to your app in Flux dashboard
 - 3. Navigate to "Update / Renew" section
 - 4. Modify the repotag to reference new image version
 - 5. Submit the update
 - 6. Wait 2-3 minutes for new version to deploy
 - 7. Check logs to confirm successful startup
 
Scaling Resources
If your app is running out of CPU, RAM, or disk:
- 1. Monitor resource usage in the dashboard
 - 2. Navigate to "Update / Renew" section
 - 3. Increase cpu, ram, or hdd values as needed
 - 4. Note: Higher resources = higher monthly cost
 - 5. Submit update and wait for redeployment
 
Updating Environment Variables
- 1. Navigate to "Update / Renew" section
 - 2. Modify the environmentParameters array
 - 3. Add, remove, or change environment variables
 - 4. Submit the update
 - 5. App will restart with new environment
 
{
  "environmentParameters": [
    "NODE_ENV=production",
    "API_KEY=new_key_here",  // Updated
    "DB_HOST=fluxpostgres_myapp"
  ]
}Troubleshooting Issues
- 1. Check application status (green = healthy)
 - 2. Review stderr logs for error messages
 - 3. Verify resource usage isn't at 100%
 - 4. Try restarting the application
 - 5. Check if recent code changes caused issues
 - 6. Verify environment variables are correct
 - 7. Check the Troubleshooting Guide for common issues
 
Management Best Practices
✓ Do
- ✓ Monitor logs regularly, especially after deployments
 - ✓ Check resource usage weekly to catch issues early
 - ✓ Test updates in a separate test deployment first
 - ✓ Use semantic versioning for Docker image tags (v1.0.0, v1.0.1)
 - ✓ Set up health check endpoints in your app
 - ✓ Keep FLUX balance sufficient for at least 1 month
 
✗ Don't
- ✗ Don't use :latest tag in production (use specific versions)
 - ✗ Don't delete apps without backing up data first
 - ✗ Don't ignore persistent high resource usage
 - ✗ Don't update production apps without testing
 - ✗ Don't store secrets in logs (they're visible in dashboard)
 - ✗ Don't let FLUX balance run to zero (app may stop)