Ta strona wyjaśnia, jak udostępnić aplikacje na serwerach GPU Trooper.AI. Możesz publikować pulpity nawigacyjne, API, aplikacje AI, punkty końcowe modeli oraz interfejsy użytkownika działające w szablonach lub własnych projektach.
Twoje serwery Blib GPU oferują od 10 do 40 publicznych portów otwartych na internet. Wszystkie usługi powiązane z tymi portami będą dostępne z zewnątrz sieci wewnętrznej za pomocą publicznej nazwy hosta Twojego serwera.
Trooper.AI zapewnia dwie ścieżki dostępu:
Natychmiastowe połączenie bez konfiguracji.
Szyfrowane udostępnianie aplikacji internetowe i API w standardzie produkcyjne. Działa domyślnie dla wszystkich szablonów i dla własnych aplikacji. Proxy WWW z SSL
Każdy serwer GPU zawiera publiczne porty TCP+UDP przypisane automatycznie do szablonów i dostępne dla niestandardowych aplikacji. UDP musi zostać aktywowany za pośrednictwem panelu zarządzania, jeśli jest to rzeczywiście wymagane.
Bezpośredni adres URL:
http://connectXX.trooper.ai:PORT
Przykładowy widok panelu sterowania:
W tym widoku:
🤖 Przekierowanie portów jest zautomatyzowanym procesem z wbudowanymi kontrolami. Zleć swojemu Agentowi AI skupienie się na konfiguracji i powiązaniu portów, ponieważ przekierowanie portów działa poprawnie. Problemy z NAT są niemożliwe, jeśli status maszyny jest zielony.
Powiąż swoją aplikację z 0.0.0.0 używając dowolnego z przypisanych portów publicznych:
Przykład Flask:
flask run --host=0.0.0.0 --port=11307
Przykład Gradio:
app.launch(server_name="0.0.0.0", server_port=11307)
Wynik:
http://connectXX.trooper.ai:11307
To podejście pozostaje dostępne do szybkiego testowania i wygody wewnętrznej. Surowe porty nie są szyfrowane; dowiedz się więcej o HTTPS.
W przypadku produkcji, uwierzytelniania, interfejsów użytkownika, osadzania, monitorowania paneli kontrolnych i użytkowania API:
1️⃣ Uruchom aplikację wewnętrznie na bezpiecznym, wewnętrznym porcie:
0.0.0.0:8080
2️⃣ Zainstaluj szablon Webproxy
3️⃣ Skonfiguruj:
8080)4️⃣ Publiczny HTTPS utworzony:
https://<token>.secure.trooper.ai
📌 Zalety:
Każdy szablon zawiera wstępnie skonfigurowany, bezpieczny Webproxy i powiązany punkt końcowy. Aby bezpiecznie udostępnić niestandardowe aplikacje wdrożone na Twoim serwerze GPU, skorzystaj z szablonu Webproxy: Proxy WWW z SSL
Bezpośrednie przypisywanie do portów 80 or 443 nie jest automatycznie wystawiany do publicznego internetu. Wykorzystaj szablon Webproxy, aby ustanowić punkty końcowe HTTPS. Instalacja niestandardowych certyfikatów SSL nie jest obsługiwana; zalecamy użycie portu 8080 dla Twojej aplikacji, co jest powszechnie preferowanym wyborem wśród programistów.
Czytaj więcej: Proxy WWW z SSL
Warstwa routingu HTTPS/Webproxy automatycznie dostosowuje zachowanie w oparciu o typ ruchu. Zapewnia to szybkie działanie krótkich, interaktywnych wywołań, a jednocześnie stabilność zadań AI/strumieniowania.
| Typ ruchu | Metoda wykrywania | Limit czasu |
|---|---|---|
| HTTP standardowy | standardowa żądanie/odpowiedź | 60s |
| Czat / Streaming (SSE/NDJSON) | /api/chat, /chat/completions, /api/generate, /generate, /stream, /events, or Accept: text/event-stream / nagłówki NDJSON |
10 minut |
| Pobieranie dużych plików | typ pliku, Range nagłówki, załączniki, transfer binarny |
30 minut |
| WebSocket | Wykrywanie aktualizacji WS/WSS | brak limitu czasu bezczynności |
💡 Proxy dynamicznie dostosowuje się, jeśli zmieniają się warunki odpowiedzi. Przykład: Obsługa pliku = automatyczne zwiększenie limitu czasu pobierania.
Wyślij poprawny typ zawartości:
text/event-streamapplication/x-ndjsonWysyłaj sygnał pulsu co 15–30 sekund.
Utrzymuj aktywność ping/pong (typowe 20–30 sekund).
Wsparcie Range żądania i status 206.
Add Content-Disposition: attachment w razie potrzeby
Przykład zapytania cURL dla SSE:
curl -N -H "Accept: text/event-stream" https://<ssl-id>.secure.trooper.ai/api/stream
Przykład NDJSON:
curl -N -H "Accept: application/x-ndjson" https://<ssl-id>.secure.trooper.ai/generate
Przykład wznowialnego pobierania:
curl -O -H "Range: bytes=0-" https://<ssl-id>.secure.trooper.ai/files/model.bin
Wewnętrznie:
ss -tlnp | grep :11307
Zewnętrznie:
curl http://connectXX.trooper.ai:11307
Surowe porty wymagają jedynie:
0.0.0.0Porty publiczne są przypisywane automatycznie i wyświetlane w panelu obok zainstalowanych szablonów.
W przypadku własnych projektów użyj:
8080→ Webproxy → HTTPS endpoint
Częste problemy podczas nawiązywania w pełni funkcjonalnego połączenia HTTPS często wynikają z prostych szczegółów konfiguracji.
❌ Niedostępne: sprawdź port i powiązanie
❌ Zły port: użyj tylko przypisanych portów
❌ Brak HTTPS: użyj szablonu Webproxy
❌ Zapora ogniowa wewnątrz kontenera: wyłącz lub dostosuj
❌ UDP nieaktywowane: TCP jest naszym standardem, aktywuj UDP przez panel zarządzania, jeśli naprawdę go potrzebujesz.
❌ Długie zadania obliczeniowe: przesył strumieniowy danych wyjściowych lub użycie trybu SSE/NDJSON
❌ Próba połączenia z własną domeną: Nie obsługujemy własnych domen.
Aplikacja wewnętrzna:
uvicorn.run("main:app", host="0.0.0.0", port=8080)
Publiczny HTTPS:
https://<token>.secure.trooper.ai
Czytaj więcej: Proxy WWW z SSL