Ga naar de hoofdinhoud

Diensten en routering

Op deze pagina wordt besproken wat de Kanera-stack uitvoert, welke onderdelen blootgelegd moeten worden en hoe u er een reverse proxy voor kunt plaatsen.

Lees het daarna Aan de slag een implementatie actief heeft, of voordat u begint als u eerst domeinen wilt plannen.

Vorm van inzet​

Het standaard opstelbestand voert deze services uit:

DienstDoel
postgresPostgreSQL-database met persistente gegevens in kanera_pgdata.
valkeyVereiste Valkey-instantie voor realtime fanout, aanwezigheid en gedeelde snelheidslimieten.
migrateEenmalige databasemigratieservice die wordt uitgevoerd voordat de app-services starten.
apiBelangrijkste Kanera API en realtime server.
workerEén achtergrondwerker voor planners, webhooklevering, meldingen, opschoning en realtime fallback voor de outbox.
public-apiOpenbare integratie-API.
mcpMCP Streamable HTTP-server ondersteund door de openbare API.
webKanera-webapp gebouwd, bediend door nginx.
db-backupOptionele gecodeerde PostgreSQL-back-upplanner.

De browser moet verbinding maken met de web dienst. Stel de hoofdleiding niet bloot api directe service; de web nginx container proxy's app API en Socket.IO verkeer intern.

Blootstellen public-api alleen als je externe integraties wilt. Blootstellen mcp alleen als u wilt dat externe MCP-clients verbinding maken via HTTP.

Gebruik afzonderlijke domeinen voor de app, openbare API en MCP wanneer u ze alle drie openbaar maakt:

DomeinDienstGebruik
kanera.example.comwebDe Kanera-webapp.
api.kanera.example.compublic-apiREST API, webhooks en API-referentie.
mcp.kanera.example.commcpExtern MCP-eindpunt voor AI-clients.

De openbare API- en MCP-domeinen zijn optioneel. U kunt beginnen met alleen de webapp en de andere later toevoegen.

Publiceer poorten​

Het standaard opstelbestand houdt services privé. Als u Docker rechtstreeks op een server gebruikt, voegt u een compose.override.yml bestand:

services:
web:
ports:
- "8080:80"

public-api:
ports:
- "3001:3001"

mcp:
ports:
- "3002:3002"

Wijs vervolgens uw HTTPS reverse proxy naar:

Openbare URLStroomopwaarts
https://kanera.example.comhttp://127.0.0.1:8080
https://api.kanera.example.comhttp://127.0.0.1:3001
https://mcp.kanera.example.comhttp://127.0.0.1:3002

Alleen publiceren public-api en mcp wanneer je ze nodig hebt.

Vertrouwen proxy-instellingen​

Stel deze in wanneer Kanera achter een vertrouwde reverse proxy zit, zoals nginx, Traefik, Caddy of een ingang die het echte client-IP verzendt:

API_TRUST_PROXY=true
PUBLIC_API_TRUST_PROXY=true

API_TRUST_PROXY helpt app-authenticatiesnelheidslimieten bij het gebruik van het echte client-IP. PUBLIC_API_TRUST_PROXY doet hetzelfde voor openbare API-tarieflimieten.

Laat ze achter false alleen wanneer de dienst rechtstreeks op internet of direct op Cloudflare is gericht.