Docker Compose Configurator β
MeshMonitor Docker Compose Configurator
Configure your MeshMonitor deployment by selecting your options below. This tool will generate a ready-to-use docker-compose.yml and .env file for your setup.
1. Connection Type
How is your Meshtastic node connected?
2. Connection Details
The IP address of your Meshtastic node
Default is 4403
3. Deployment Mode
How will you access MeshMonitor?
4. Port Configuration
Port to access MeshMonitor web interface
5. Security Settings
Port for Meshtastic mobile apps to connect (default: 4404)
6. Additional Settings
Your timezone (e.g., America/New_York, Europe/London, Asia/Tokyo) See list
Adds a watchdog sidecar container that allows one-click upgrades through the web UI. Learn more
Adds a TileServer GL Light container for serving offline map tiles. Supports both vector (.pbf) and raster (.png) tiles for full offline operation.
Mounts ./scripts to /data/scripts for easy management of Auto Responder scripts. Learn more
Adds an MQTT proxy container that routes MQTT traffic through MeshMonitor instead of directly from your node. Useful when your node has unreliable WiFi or when you want MQTT without running mobile apps. Learn more
7. Generated Configuration
docker-compose.yml
services:
meshmonitor:
image: ghcr.io/yeraze/meshmonitor:latest
container_name: meshmonitor
ports:
- "8080:3001"
- "4404:4404"
restart: unless-stopped
volumes:
- meshmonitor-data:/data
env_file: .env
environment:
- NODE_ENV=development
- TZ=America/New_York
- MESHTASTIC_NODE_IP=192.168.1.100
- ALLOWED_ORIGINS=http://localhost:8080
- ENABLE_VIRTUAL_NODE=true
volumes:
meshmonitor-data:
driver: local.env
# MeshMonitor Configuration
# Generated by MeshMonitor Docker Compose Configurator
Deployment Instructions
- Copy the
docker-compose.ymlcontent above and save it to a file nameddocker-compose.yml - Copy the
.envcontent above and save it to a file named.envin the same directory - Run
docker compose up -dto start MeshMonitor - Access MeshMonitor at http://localhost:8080
Need Help? β
If you encounter any issues with your configuration:
- Connection issues: See our troubleshooting guides
- BLE setup: Check the BLE Bridge documentation
- Serial/USB setup: Check the Serial Bridge documentation
- MQTT Proxy setup: Check the MQTT Client Proxy documentation
- Production deployment: Review the Production Deployment guide
- Reverse proxy: See Reverse Proxy Configuration
What's Next? β
After deploying with the generated configuration:
- Configure your node: Make sure your Meshtastic device is properly configured
- Set up notifications: Configure push notifications for alerts
- Security: Review security best practices
- Backups: Set up automated backups
- Monitoring: Configure health checks and monitoring
Configuration Options Explained β
Connection Types β
- TCP/Network: For devices with WiFi or Ethernet connectivity. This is the most straightforward option and provides the best performance.
- Bluetooth (BLE): For devices that only have Bluetooth connectivity. Requires the BLE Bridge and a system with Bluetooth hardware.
- USB/Serial: For devices connected via USB or serial port. Requires the Serial Bridge and the device to be physically connected to your server.
Deployment Modes β
- Development (HTTP): Best for local testing and home use. Simple HTTP access without SSL/TLS.
- Production with Reverse Proxy: Recommended for production deployments. Uses HTTPS via a reverse proxy like nginx, Caddy, or Traefik.
- Production without Reverse Proxy: Direct HTTP access in production. Not recommended due to lack of encryption.
Security Options β
- Virtual Node: When enabled, allows multiple Meshtastic mobile apps to connect to MeshMonitor simultaneously without overwhelming your physical node. Highly recommended.
- Disable Anonymous Access: When enabled, users must authenticate before accessing MeshMonitor. Useful for deployments accessible from the internet.
Additional Settings β
- Automatic Self-Upgrade: Enable one-click upgrades through the web UI with the upgrade watchdog sidecar.
- Offline Map Tiles: Add TileServer GL for serving offline map tiles when internet connectivity is limited.
- Auto Responder Scripts: Mount a scripts directory for custom automation scripts.
- MQTT Client Proxy: Route MQTT traffic through MeshMonitor instead of your node's WiFi. Useful for nodes with unreliable connectivity or when using Serial/BLE connections. See MQTT Client Proxy documentation.
Advanced Topics β
For more complex deployments, check out these resources:
- Kubernetes/Helm Deployment
- High Availability Setup
- SSO/OIDC Authentication
- Custom SSL Certificates
- Database Optimization
- MQTT Client Proxy - Reliable MQTT for nodes with unreliable WiFi