Service not appearing in Tailscale admin console
Symptoms and diagnosis
Symptoms and diagnosis
The service container starts but doesn’t appear in your Tailscale admin console.Check Tailscale logs:Verify Tailscale status:
Solution: Invalid auth key
Solution: Invalid auth key
Cause: The
TS_AUTHKEY is invalid, expired, or already used (without reusable flag).Fix:- Generate a new auth key in the Tailscale admin console
- Enable the Reusable option
- Update your
.envfile: - Restart the service:
Solution: /dev/net/tun not available
Solution: /dev/net/tun not available
Cause: The Fix for Linux:Fix for WSL2:Then restart WSL:
/dev/net/tun device isn’t available on the host.Verify device exists:Health check failures
Tailscale health check failing
Tailscale health check failing
Symptoms: Tailscale container marked as unhealthyTest the health endpoint:Expected output:Common fixes:
- Verify
TS_ENABLE_HEALTH_CHECK=trueis set - Verify
TS_LOCAL_ADDR_PORT=127.0.0.1:41234is set - Check Tailscale has authenticated:
- Wait for the
start_periodto elapse (default 10s)
Application health check failing
Application health check failing
Symptoms: Application container marked as unhealthyDebug the health check:Common fixes:
- Increase
start_periodfor slow-starting services: - Verify the process name matches the health check command
- Check if the application requires additional configuration before starting
DNS resolution issues
Cannot resolve .ts.net domains
Cannot resolve .ts.net domains
Symptoms: Cannot access service via MagicDNS hostname (
servicename.your-tailnet.ts.net)Solution:- Enable MagicDNS in your Tailscale admin console
- Add
TS_ACCEPT_DNS=trueto your Tailscale container: - Restart the service:
DNS resolution inside containers
DNS resolution inside containers
Symptoms: Application container cannot resolve external domainsSolution: Add a DNS server to your compose.yaml:Or use your Then in compose.yaml:
.env file:Network connectivity problems
Service accessible locally but not via Tailscale
Service accessible locally but not via Tailscale
Symptoms: Can access service via Check Serve configuration:Verify serve.json configuration:
localhost but not via Tailscale IPVerify Tailscale connectivity:Cannot access service from internet (Funnel)
Cannot access service from internet (Funnel)
Symptoms: Funnel enabled but service not accessible publiclyVerify Funnel is enabled:
- Check
AllowFunnelin serve.json: - Enable Funnel in the admin console
- Restart the service:
Permission errors
Permission denied on volume mounts
Permission denied on volume mounts
Symptoms: Application cannot write to mounted volumesError in logs:Solution: Fix directory ownership:For PUID/PGID services:
Docker socket permission denied
Docker socket permission denied
Symptoms: Cannot connect to Docker daemonError:Solution:
Port binding conflicts
Port already in use
Port already in use
Symptoms: Cannot start service due to port conflictError:Find the conflicting process:Solution: Either:
- Stop the conflicting service
- Change the port in your compose.yaml
- Comment out the ports section if you only need Tailscale access:
Configuration issues
Environment variables not substituted
Environment variables not substituted
Symptoms: Variables like Validate configuration:Solution: Ensure
${SERVICE} appear literally in container namesVerify .env file exists:.env file is in the same directory as compose.yamlserve.json not loading
serve.json not loading
Symptoms: Tailscale Serve not working, service not accessible on port 443Check if serve.json is mounted:Verify TS_SERVE_CONFIG is set:Expected output:Solution: Verify the configs section in compose.yaml:
Resource issues
Out of memory errors
Out of memory errors
Symptoms: Container crashes or OOM (Out of Memory) errors in logsAdd memory limits:
Disk space issues
Disk space issues
Symptoms: Cannot write files, containers failing to startCheck disk usage:Clean up Docker resources:
Getting help
GitHub Issues
Report bugs or request features
Tailscale Support
Get help with Tailscale-specific issues
Community
Ask questions and share experiences
Documentation
Review the quickstart guide