Ngrok Tunneling
Make your local development sites accessible from anywhere on the internet using ngrok tunnels. Perfect for sharing work with clients, testing webhooks, or collaborating with remote teams.
Prerequisites
Section titled “Prerequisites”Before you can use ngrok tunneling, you need:
- An active DAMP project with DevContainer running
- A free ngrok account (sign up at ngrok.com)
- Your ngrok authtoken from the ngrok dashboard
Setup Your Authtoken
Section titled “Setup Your Authtoken”-
Open DAMP Settings
Navigate to Settings → Ngrok Tunneling section.
-
Enter your authtoken
Paste your ngrok authtoken from the dashboard into the Authtoken field.
-
Validate the token (optional)
Click “Validate” to ensure your token is working correctly.
-
Save configuration
Click “Save Configuration” to store your settings.
Your authtoken is now saved and will be used for all tunnel connections.
Start a Tunnel
Section titled “Start a Tunnel”-
Open your project
Navigate to the Sites page and select a project.
-
Ensure DevContainer is running
The site’s DevContainer must be active (status should show “Active”).
-
Open Tunnel Management
Click the tunnel icon or navigate to the tunnel section for your site.
-
Start the tunnel
Click “Start Tunnel” button.
Wait a few seconds while ngrok establishes the connection…
-
Get your public URL
Once connected, you’ll see a public URL like:
https://abc123.ngrok-free.appClick the copy button to copy the URL to your clipboard.
Share Your Site
Section titled “Share Your Site”Your site is now accessible from anywhere! Share the public URL with:
- 🌐 Clients - Show off your work in progress
- 👥 Team members - Collaborate remotely
- 🔗 Webhook services - Test integrations (Stripe, PayPal, etc.)
- 📱 Mobile devices - Test on real devices
Monitor Your Tunnel
Section titled “Monitor Your Tunnel”While your tunnel is active, DAMP shows real-time statistics:
- Connection count - Number of active connections
- HTTP requests - Total requests received
- Public URL - Your current tunnel address
- Status - Active/Inactive indicator
Advanced Configuration
Section titled “Advanced Configuration”Site-Specific Settings
Section titled “Site-Specific Settings”Each site can have its own ngrok configuration:
-
Open Site-Specific Settings
In the tunnel management panel, click “Site-Specific Settings”.
-
Configure options
- Custom Domain: Use a branded URL (requires paid plan)
- Region: Pin tunnel to specific region (us, eu, ap, etc.)
- Compression: Enable gzip compression (requires paid plan)
-
Save settings
Click “Save Site Settings” to apply.
Global Settings
Section titled “Global Settings”Configure default settings for all tunnels in Settings → Ngrok Tunneling:
- Region - Choose closest region for better performance
- Compression - Enable by default for all tunnels
Stop a Tunnel
Section titled “Stop a Tunnel”When you’re done sharing:
- Click “Stop Tunnel” button
- The public URL will immediately become unavailable
- All active connections are gracefully closed
Use Cases
Section titled “Use Cases”Client Demos
Section titled “Client Demos”Share work-in-progress with clients without deploying:
1. Start your local site2. Create ngrok tunnel3. Share the public URL4. Client can view your site immediatelyWebhook Testing
Section titled “Webhook Testing”Test webhook integrations from services like Stripe or GitHub:
1. Start tunnel to your local site2. Configure webhook URL in the service3. Receive real webhook events locally4. Debug with your local development toolsMobile Testing
Section titled “Mobile Testing”Test your site on real mobile devices:
1. Start tunnel for your responsive site2. Open the ngrok URL on your phone/tablet3. Test touch interactions and mobile layouts4. Debug using desktop dev toolsRemote Collaboration
Section titled “Remote Collaboration”Show your work to remote team members instantly:
1. Start tunnel for your feature branch2. Share URL in team chat3. Get instant feedback4. Iterate together in real-timeLimitations & Best Practices
Section titled “Limitations & Best Practices”Free Account Limits
Section titled “Free Account Limits”- ⏱️ 40 connections/minute - Enough for normal development
- 🔗 1 online tunnel - Can only run one tunnel at a time
- 🌐 Random URLs - New URL on each restart
- ⏰ 8-hour sessions - Tunnel disconnects after 8 hours
Security Considerations
Section titled “Security Considerations”- 🔒 HTTPS only - Ngrok provides secure tunnels by default
- 🚫 Don’t share sensitive data - Remember the internet can access your tunnel
- 🔐 Use authentication - Add password protection for sensitive sites
- ⏱️ Stop when done - Don’t leave tunnels running unnecessarily
Performance Tips
Section titled “Performance Tips”- 📍 Choose nearest region - Reduces latency
- 🗜️ Enable compression - Faster transfers (paid feature)
- 🧹 Clean up inactive tunnels - Stop tunnels you’re not using
Troubleshooting
Section titled “Troubleshooting””Devcontainer Not Running”
Section titled “”Devcontainer Not Running””Problem: Can’t start tunnel Solution: Open project in VS Code and start the DevContainer first
”Invalid Authtoken”
Section titled “”Invalid Authtoken””Problem: Token validation fails Solution:
- Get fresh token from ngrok dashboard
- Ensure no extra spaces when pasting
- Save and validate again
”Connection Failed”
Section titled “”Connection Failed””Problem: Tunnel won’t start Solution:
- Check your internet connection
- Verify Docker and DevContainer are running
- Try stopping and starting the DevContainer
- Check ngrok service status at status.ngrok.com
”URL Not Working”
Section titled “”URL Not Working””Problem: Public URL not accessible Solution:
- Verify tunnel status shows “Active”
- Check site is running in DevContainer
- Test local URL first (https://sitename.local)
- Refresh the tunnel status
Q: Do I need to pay for ngrok? A: No, the free tier works great for development. Paid plans add custom domains and higher limits.
Q: Can I use the same tunnel URL every time? A: Only with ngrok paid plans. Free accounts get a new random URL each time.
Q: How long does a tunnel stay active? A: Free accounts: 8 hours maximum. Paid accounts: unlimited.
Q: Can I run multiple tunnels at once? A: Free accounts: 1 tunnel. Paid accounts: multiple tunnels.
Q: Is it safe to share my ngrok URL? A: Ngrok uses HTTPS, but the URL is public. Don’t expose sensitive data without authentication.
Q: Why does my tunnel disconnect? A: Common causes: 8-hour limit, internet disruption, DevContainer stopped, or ngrok service issues.
Start sharing! 🚀 Ngrok tunneling makes it incredibly easy to share your local development work with the world. No deployment, no configuration - just click and share.
Need help? Check our troubleshooting guide or join our community.