🌍 HTTPS Toegang (SSL Proxy)

Deze pagina legt uit hoe je applicaties op Trooper.AI GPU servers publiekelijk bereikbaar kunt maken. Je kunt dashboards, API's, AI-apps, modeleindpunten en gebruikersinterfaces die draaien in templates of je eigen projecten publiceren.

Uw GPU Server Blibs bieden 10 tot 40 publieke poorten die toegankelijk zijn via het internet. Elke service die aan deze poorten is gekoppeld, is bereikbaar vanaf buiten het interne netwerk met behulp van de publieke hostnaam van uw server.

Trooper.AI biedt twee toegangsmogelijkheden:

1️⃣ Directe Ruwe Publieke Poorten

Directe connectiviteit zonder installatie.

2️⃣ 🔐 Veilige HTTPS via Webproxy (Aanbevolen)

Productieklas versleutelde blootstelling voor webapps en API's. Actief op alle templates en standaard voor eigen apps. Web Proxy met SSL


🌐 Openbare Poorttoewijzing

Elke GPU-server bevat standaard publieke TCP+UDP-poorten die aan sjablonen zijn toegewezen en beschikbaar zijn voor aangepaste apps. UDP moet worden geactiveerd via het management dashboard als dit echt nodig is.

Directe URL:

Code
http://connectXX.trooper.ai:PORT

Voorbeeld dashboardweergave:

Public Ports on Template Installs
Openbare Poorten op Template Installaties

In dit overzicht:

  • Publieke poortbereiken
  • Publieke hostnamen
  • Sjabloonnaam
  • Sloticoon = beveiligde HTTPS beschikbaar
  • Info = documentatielink
  • Instellingen = configuratie

🤖 Poortdoorvoer is een geautomatiseerd proces met ingebouwde controles. Geef uw AI Agent de instructie zich te concentreren op poortconfiguratie en binding, aangezien poortdoorvoer correct functioneert. Er kunnen geen NAT-problemen optreden als de status van uw machine groen is.


🚀 Directe Ruwe Poorttoegang (Snelle Optie)

Koppel uw applicatie aan 0.0.0.0 met behulp van een van de toegewezen publieke poorten:

Voorbeeld Flask:

bash
flask run --host=0.0.0.0 --port=11307

Voorbeeld Gradio:

python
app.launch(server_name="0.0.0.0", server_port=11307)

Resultaat:

Code
http://connectXX.trooper.ai:11307

Deze aanpak blijft beschikbaar voor snelle tests en intern gemak. Raw poorten zijn niet versleuteld; lees meer over HTTPS.


🔐 Beveiligde HTTPS met Webproxy (Aanbevolen)

Voor productie, authenticatie, gebruikersinterfaces, embeddings, monitoring dashboards en API-gebruik:

1️⃣ Voer app intern uit op een veilige interne poort:

Code
0.0.0.0:8080

2️⃣ Installeer de Webproxy Template

3️⃣ Configureren:

  • interne poort → app-poort (bijv. 8080)
  • externe Webproxy-poort → geselecteerd bij installatie

4️⃣ Openbare HTTPS gemaakt:

Code
https://<token>.secure.trooper.ai

📌 Voordelen:

  • automatische SSL-certificaten
  • WebSocket-ondersteuning
  • alleen interne routing (veilige paden)
  • geen nginx-configuratie nodig
  • geen lokale reverse proxies vereist

Elke template bevat een vooraf geconfigureerde, beveiligde Webproxy en bijbehorend eindpunt. Om aangepaste applicaties die op uw GPU-server zijn geïmplementeerd veilig bloot te stellen, gebruikt u de Webproxy-template: Web Proxy met SSL


⚠️ Gebruik van poort 80 / 443

Directe binding aan poorten 80 or 443 wordt niet automatisch blootgesteld aan het publieke internet. Gebruik de Webproxy-template om HTTPS-eindpunten in te stellen. Het installeren van aangepaste SSL-certificaten wordt niet ondersteund; we raden aan om poort 8080 voor uw applicatie te gebruiken, een veelvoorkeur keuze onder ontwikkelaars.

Lees meer: Web Proxy met SSL


⏱️ Proxy Time-out Klassen

De HTTPS/Webproxy routinglaag past het gedrag automatisch aan op basis van het type verkeer. Dit zorgt ervoor dat korte interactieve oproepen snel blijven, terwijl AI/streamingtaken stabiel blijven.

Verkeerstype Detectiemethode Time-out
Standaard HTTP standaard request/response 60s
Chat / Streaming (SSE/NDJSON) /api/chat, /chat/completions, /api/generate, /generate, /stream, /events, or Accept: text/event-stream / NDJSON headers 10 minuten
Grote downloads bestandstype Range headers, bijlagen, binaire overdracht 30 minuten
WebSockets WS/WSS upgrade detectie geen inactieve time-out

💡 De proxy past zich dynamisch aan als de responsomstandigheden veranderen. Voorbeeld: Een bestand serveren = automatische upgrade naar downloadtimeout.

📝 Toepassingsvereisten

Voor SSE/NDJSON Streaming

Stuur het juiste content type:

  • text/event-stream
  • application/x-ndjson

Stuur elke 15–30 seconden een heartbeat-output.

Voor WebSockets

Houd ping/pong actief (20–30s gebruikelijk).

Voor Downloads

Ondersteuning Range verzoeken en status 206. Add Content-Disposition: attachment indien nodig.


🧪 Stream modi testen

Voorbeeld SSE curl:

bash
curl -N -H "Accept: text/event-stream" https://<ssl-id>.secure.trooper.ai/api/stream

Voorbeeld NDJSON:

bash
curl -N -H "Accept: application/x-ndjson" https://<ssl-id>.secure.trooper.ai/generate

Voorbeeld van een hervattbare download:

bash
curl -O -H "Range: bytes=0-" https://<ssl-id>.secure.trooper.ai/files/model.bin

🧪 Poortbereikbaarheidstests

Intern:

bash
ss -tlnp | grep :11307

Extern:

bash
curl http://connectXX.trooper.ai:11307

Raw poorten vereisen alleen:

  • actieve app
  • binding 0.0.0.0
  • correcte poortgebruik

🔁 Publieke Poorten & Templates

Publieke poorten worden automatisch toegewezen en worden weergegeven in het dashboard naast de template-installaties.

Gebruik voor eigen projecten:

Code
8080→ Webproxy → HTTPS endpoint

🧯 Probleemoplossing

Veelvoorkomende problemen bij het tot stand brengen van een volledig functionele HTTPS-verbinding zijn vaak gerelateerd aan eenvoudige configuratiedetails.

❌ Niet bereikbaar: controleer poort & binding
❌ Verkeerde poort: gebruik alleen toegewezen poorten
❌ Geen HTTPS: gebruik de Webproxy-sjabloon
❌ Firewall in container: uitschakelen of aanpassen
❌ UDP niet geactiveerd: TCP is onze standaard, activeer UDP via het management dashboard als je UDP echt nodig hebt
❌ Lange berekeningsjobs: stream output of gebruik SSE/NDJSON modus
❌ Eigen domein proberen te verbinden: we ondersteunen geen eigen domeinen.


🧑‍💻 Voorbeeld: FastAPI met Webproxy

Interne app:

python
uvicorn.run("main:app", host="0.0.0.0", port=8080)

Publieke HTTPS:

Code
https://<token>.secure.trooper.ai

Lees meer: Web Proxy met SSL


📎 Nuttige links