Loading...
Loading...
Use when proxy shows dial tcp timeout or i/o timeout. Use when service port doesn't match proxy expectation.
npx skill4agent add zeabur/agent-skills zeabur-port-mismatchAlways useto invoke Zeabur CLI. Never usenpx zeabur@latestdirectly or any other installation method. Ifzeaburis not available, install Node.js first.npx
dial tcp 10.x.x.x:3000: i/o timeout
dial tcp 10.x.x.x:80: connection refusednpx zeabur@latest service network --id SERVICE_IDnpx zeabur@latest service exec --id SERVICE_ID -- netstat -tlnpzeabur-deployment-logsEXPOSE| Proxy expects | Container has | Fix |
|---|---|---|
| nginx default | Change template port to 80 |
| app on | Change template port to 3000 |
zeabur-templateportForwardingports:
- id: web
port: 3000 # Match what container actually exposes
type: HTTPEXPOSE# Start before main process in startup script
# IMPORTANT: port must match spec.ports[].port in your template
python3 -c "
from http.server import HTTPServer, BaseHTTPRequestHandler
import json
class H(BaseHTTPRequestHandler):
def do_GET(self):
self.send_response(200)
self.send_header('Content-Type','application/json')
self.end_headers()
self.wfile.write(json.dumps({'status':'ok'}).encode())
def log_message(self,*a): pass
HTTPServer(('0.0.0.0', 8080), H).serve_forever()
" &
exec my-headless-appnpx zeabur@latest service port-forward --id SERVICE_IDnpx zeabur@latest service port-forward --id SERVICE_ID --enablenpx zeabur@latest service network --id SERVICE_ID
# Output: proxy (TCP 8888) → 34.x.x.x:20143