Next.js-App ausrollen
Ein Next.js-Repo aus dem Editor zu einer betriebenen Live-URL bringen. Ein Prompt, etwa fünf Minuten, keine Manifeste von Hand.
Der ganze Weg in einem Durchgang: Sie geben Ihrem Coding-Agenten ein Next.js-Repo, und etwa fünf Minuten später läuft es live auf nyxory. Sie schreiben einen Prompt. Der nyxory-Agent übernimmt den Deploy mit Build, Secrets, Image und Rollout und gibt Ihnen eine URL zurück. Sie schreiben kein Dockerfile und bearbeiten keine Manifeste von Hand.
Voraussetzungen
- Ihr Agent ist mit nyxory verbunden, siehe Agent verbinden
- Ein Next.js-Repo (Pages Router oder App Router, beides geht)
- Etwas Reserve in Ihrem Konto (das prüft Ihr Agent für Sie)
1. Repo öffnen und Auftrag geben
Öffnen Sie das Next.js-Projekt in Ihrem verbundenen Editor und sagen Sie, was Sie wollen:
Roll diese Next.js-App auf nyxory aus
Soll sie in ein bestimmtes Projekt, nennen Sie es:
Roll diese Next.js-App in mein Projekt „widget“ auf nyxory aus
2. Den Agenten arbeiten lassen
Ab hier müssen Sie nichts mehr tun. Ihr Agent holt das Rezept für eine Next.js-App und arbeitet den Deploy ab. Jeden Schritt sehen Sie, während er passiert:
- Er klont das Repo in ein isoliertes Arbeitsverzeichnis außerhalb Ihres Rechners (privates Repo? Dann gibt er Ihnen einen Link zur einmaligen Installation der GitHub App)
- Er prüft
package.jsonund Ihre Umgebung und fragt, welche Werte Secrets sind und welche beim Build eingebettet werden - Er baut ein Container-Image und rollt es aus
Jeder dieser Schritte kann für eine kurze Rückfrage anhalten, etwa bei einem uneindeutigen Secret, einem ungewöhnlichen Build-Skript oder einer unbekannten Abhängigkeit. Sie steuern den Deploy nicht selbst, Sie geben ihn frei.
3. Live-Gang verfolgen
Ist der Deploy abgeschlossen, gibt Ihr Agent eine URL wie https://widget-<id>.nyxory.app zurück, und die App erscheint in der Console, live und mit ihrer Ressourcennutzung und ihrem Traffic. Verfolgen können Sie das auf beiden Wegen:
nyx app list # everything you're running
nyx app get widget my-nextjs # one app, including its live host
nyx app logs widget my-nextjs # container logs, no kubectl hop
Oder öffnen Sie in der Console Projects > widget > Apps.
4. Prüfen, ob die App live ist
Lesen Sie den Host mit nyx app get aus und rufen Sie ihn dann auf:
nyx app get widget my-nextjs --json | jq -r '.data.domains[0].host'
curl -I https://my-nextjs-<namespace>.nyxory.app
Erwartet ist 200 OK. Sie können die App auch einfach im Browser öffnen. (nyx app verify widget my-nextjs übernimmt die Prüfung für Sie.)
Next.js richtig einrichten
Tipp:
output: 'standalone'innext.config.jserzeugt einen kleineren Container, der schneller startet. Sehr zu empfehlen. Ihr Agent setzt die Option für Sie, falls sie noch fehlt.- Umgebungsvariablen als Secrets oder beim Build eingebettet.
NEXT_PUBLIC_*-Variablen werden ins Client-Bundle eingebaut, alles andere bleibt auf dem Server. Ist das in.envnicht eindeutig, fragt Ihr Agent Sie, was was ist.- Pfade statischer Assets unter einem Pfad-Präfix. Haben Sie
basePathoderassetPrefixkonfiguriert, prüfen Sie, ob der Ingress-Host dazu passt. Defekte Bilder liegen meist an einem nicht passendenbasePath.- Bildoptimierung. Wenn Sie keine Bildverarbeitung zur Laufzeit im Pod wollen, braucht der Image Loader von Next
unoptimized: trueoder eine Konfiguration für einen Remote Loader.
Nächste Schritte
- Eigene Domain hinzufügen: Ihren eigenen Hostnamen anbinden
- Bei jedem Push ausrollen: bei jedem Git-Push automatisch neu ausrollen
- Monitoring: Ressourcennutzung, Traffic und Logs
- Aus einem privaten Repo ausrollen: die GitHub App einmalig installieren