In dieser Anleitung wird beschrieben, wie Sie einen Webdienst für die Ausführung in einem Container in Knative Serving vorbereiten. Die Datenmigration wird nicht behandelt.
Port identifizieren, den Ihr Code überwacht
Ihr Dienst sollte auf Anfragen an einem bestimmten Port warten. Sie müssen diesen Port identifizieren und Knative Serving so konfigurieren, dass Anfragen an denselben Port gesendet werden.
Dies ist derselbe Port, den Sie auch beim Aufrufen Ihres Dienstes auf Ihrem lokalen Computer verwenden würden. Wenn Sie Ihren Code beispielsweise testen möchten, öffnen Sie localhost:3000
und legen Sie den Containerport in Knative Serving auf 3000
fest.
Knative Serving sendet standardmäßig Anfragen an 8080
.
Der Wert des Ports, an den Anfragen gesendet werden, ist immer in der Umgebungsvariable PORT
verfügbar. Als Best Practice empfiehlt es sich, dass der Code den Wert überwacht, der durch die Umgebungsvariable PORT
definiert ist.
Lokales Dateisystem von der Abhängigkeit von nichtflüchtigem Speicher befreien
Prüfen Sie Ihren Anwendungscode auf Abhängigkeiten von lokalen Dateisystemen und ersetzen Sie diese durch Dateispeicher in Cloud Storage oder Datenspeicher wie Firestore oder Cloud SQL.
Dockerfile
hinzufügen
Zur Verpackung des Dienstes in einem Container empfiehlt sich ein Dockerfile, mit dem die Betriebsumgebung definiert wird. Weitere Informationen zum Anpassen von Dockerfile
finden Sie auf der Seite Dienst entwickeln
Gleichzeitigkeit und Speicherlimits abstimmen
Informationen zu Gleichzeitigkeit in Knative Serving und zum Optimieren Ihrer Dienste finden Sie in den Entwicklungstipps zum Optimieren der Gleichzeitigkeit.
Achten Sie darauf, das Speicherlimit hoch genug anzusetzen, damit die Anwendung ausgeführt wird und der Dienst genügend Speicher für die temporäre Speicherung von Dateien hat.
Logs an stdout oder stderr senden
Knative Serving verwendet automatisch Google Cloud Observability, um Ihre Logs zusammenzufassen und zu prüfen, wie auf der Logging-Seite beschrieben.