- One-Click Installation: Automated Docker & dependency setup
- Smart Environment Management: Secure wallet & node configuration
- Screen Session Monitoring: Background monitoring with easy attach/detach
- Enhanced Docker Integration: Optimized networking with
--network host - Robust Error Handling: Automatic retry mechanisms & graceful recovery
- Input Validation: Wallet address format verification
- Secure Configuration: Environment file with proper permissions (600)
- Clean Shutdown: Proper container & session cleanup
- Health Monitoring: Container status & resource usage tracking
- Rich Logging: Color-coded output with emojis for easy reading
- Debug Mode: Comprehensive system diagnostics
- Multi-OS Support: Ubuntu, Debian, CentOS, Fedora, Arch Linux
- Interactive Setup: Guided configuration process
# Download the script
curl -sSL https://raw.githubusercontent.com/rokhanz/nexus-cli-docker/main/nexus-manager.sh -o nexus-manager.sh
# Make it executable
chmod +x nexus-manager.sh
# Install and setup
./nexus-manager.sh install
# Start the Nexus node
./nexus-manager.sh start- OS: Linux (Ubuntu/Debian/CentOS/Fedora/Arch)
- RAM: Minimum 2GB (recommended 4GB+)
- Storage: 10GB free space
- Network: Stable internet connection
The script automatically handles:
- โ Docker installation and configuration
- โ Screen utility setup
- โ System validation
- โ Image building and optimization
- โ Network configuration
./nexus-manager.sh installDuring installation you'll be prompted for:
- Wallet Address: Your Ethereum wallet (0x format, 40 characters)
- Node ID: Unique identifier for your node (minimum 3 characters)
- Install:
./nexus-manager.sh install - Start:
./nexus-manager.sh start - Monitor:
./nexus-manager.sh statusorscreen -r nexus - Stop:
./nexus-manager.sh stop
| Command | Description | Example |
|---|---|---|
install |
Complete setup and installation | ./nexus-manager.sh install |
start |
Start Nexus node with monitoring | ./nexus-manager.sh start |
stop |
Stop node and cleanup | ./nexus-manager.sh stop |
restart |
Restart the node | ./nexus-manager.sh restart |
status |
Show current status | ./nexus-manager.sh status |
info |
Detailed container information | ./nexus-manager.sh info |
debug |
System diagnostics | ./nexus-manager.sh debug |
logs |
View container logs | ./nexus-manager.sh logs |
attach |
Attach to screen session | ./nexus-manager.sh attach |
uninstall |
Complete removal | ./nexus-manager.sh uninstall |
help |
Show help information | ./nexus-manager.sh help |
# Check detailed container info (ports, network, resources)
./nexus-manager.sh info
# Debug system issues
./nexus-manager.sh debug
# Monitor real-time logs
./nexus-manager.sh logs
# Quick status check
./nexus-manager.sh statusThe script creates a dedicated screen session for monitoring:
# Attach to monitor
screen -r nexus
# Detach (keep running)
Ctrl+A, D
# List all sessions
screen -list# Quick status
docker ps | grep nexus-node
# Resource usage
docker stats nexus-node
# Live logs
docker logs -f nexus-node๐ Status Nexus Node:
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Docker Container:
NAMES STATUS PORTS IMAGE
nexus-node Up 10 minutes nexus-cli:latest
โ
Screen Session: Aktif (nexus)
๐ต Gunakan 'screen -r nexus' untuk attach
Environment:
WALLET_ADDRESS=0x1234567890123456789012345678901234567890
NODE_ID=my-node-001
DEBUG=false
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
This is NORMAL when using --network host. The container uses all host ports directly for optimal performance.
# Debug the issue
./nexus-manager.sh debug
# Check logs
./nexus-manager.sh logs
# Restart cleanly
./nexus-manager.sh restart# Check screen installation
screen -v
# Manual cleanup
screen -S nexus -X quit
# Restart
./nexus-manager.sh start# Check TUN device
ls -la /dev/net/tun
# Verify network interfaces
ip link show
# Debug system
./nexus-manager.sh debugUse the built-in debug command for comprehensive diagnostics:
./nexus-manager.sh debugThis provides:
- Screen session status
- Docker container details
- Environment configuration
- Network interface information
- System resource usage
- Exit 1: System validation failed
- Exit 1: Docker issues
- Exit 1: Environment setup problems
~/nexus-cli-docker/
โโโ .env # Environment configuration
โโโ Dockerfile # Docker image definition
โโโ config/
โโโ config.json # Node configuration
~/.nexus/ # Nexus configuration directory
- Environment file (
.env) has restricted permissions (600) - Wallet address validation ensures proper format
- Container runs with minimal required privileges
- No sensitive data exposed in logs
- Uses
--network hostfor optimal performance - TUN device support for VPN capabilities
- DNS configuration passthrough
- Automatic restart policy:
unless-stopped - Memory-efficient Docker image
- Background processing with screen
- Docker installed
- Bash 4.0+
- Linux environment
# Syntax check
bash -n nexus-manager.sh
# Enable debug mode
export DEBUG=true
./nexus-manager.sh start- Check Status:
./nexus-manager.sh status - Debug System:
./nexus-manager.sh debug - View Logs:
./nexus-manager.sh logs - Check Issues: GitHub Issues
- Port not showing: Normal with
--network host - Container restarting: Check debug output
- Screen not working: Reinstall with
./nexus-manager.sh install
Contributions are welcome! Please:
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
This project is licensed under the MIT License - see the LICENSE file for details.
- Nexus Network for the innovative prover network
- Docker community for containerization standards
- Screen maintainers for session management
โญ Star this repository if it helped you!
๐ Found a bug? Report it
๐ก Have a suggestion? Let us know