If you want to access Teable via a domain name, enable HTTPS (SSL termination), or keep Teable in a private network behind a single gateway, putting Nginx in front of Teable is a common setup.Documentation Index
Fetch the complete documentation index at: https://help.teable.ai/llms.txt
Use this file to discover all available pages before exploring further.
Key points:
PUBLIC_ORIGINmust match the final public URL your users use (e.g.https://teable.example.com, without a trailing/)- We strongly recommend treating HTTPS + certificates as the default (donât run production traffic over plain HTTP)
- If you rely on WebSocket features, your reverse proxy must forward the
Upgrade/Connectionheaders
Recommended: HTTPS (default / production)
Treat HTTPS as the default: serve end users on 443; keep port 80 only for redirecting to 443 (or for ACME HTTP-01 challenges). Below is a productionâstyle example (HTTPS + WebSocket + HTTPâHTTPS redirect). Replace the domain and certificate paths:Certificates (issuance / renewal)
- Letâs Encrypt (recommended): use Certbot or acme.sh for automatic issuance and renewal
- GUI tools: Nginx Proxy Manager can request and autoârenew certificates from its UI
Example 1: Minimal location / (quick start)
Note: This is an HTTP-only example for internal networks or quick verification. For production, prefer the HTTPS configuration above.
Docker tips
- Nginx on the host, Teable in containers: typically use
proxy_pass http://127.0.0.1:3000;(assuming3000:3000is published) - Nginx and Teable in the same Docker network: you can route via the service/container name, e.g.
proxy_pass http://teable:3000;
Common pitfalls
- Avoid path rewrites: rewrites can break Teableâs internal routing unless you know exactly what youâre doing.
- Make sure
PUBLIC_ORIGINis correct: it affects generated URLs, redirects, import/upload flows, callbacks, etc.
Nginx Proxy Manager (NPM)
If you donât want to write Nginx config by hand, GUI tools can help manage domains, certificates, and proxy hosts:- Nginx Proxy Manager (NPM): common in Docker-based setups
- Create a Proxy Host: set
Domain Namestoteable.example.com,Schemetohttp,Forward Hostname / IPto127.0.0.1(orteableinside a Docker network), andForward Portto3000 - Enable WebSocket support: turn on WebSocket support in Proxy Host options (label varies by version)
- Provision/attach SSL: request/select a Letâs Encrypt certificate and optionally force HTTPS redirect
- Donât forget Teable env: set
PUBLIC_ORIGINto the final public URL (e.g.https://teable.example.com)

