本指南介绍如何准备 Web 服务以使其能够在 Knative serving 上的容器中运行。本文不涉及数据迁移内容。
确定代码侦听的端口
您的服务应该侦听特定端口上的请求。您必须确定此端口并配置 Knative serving 以向同一端口发送请求。
该端口与您在本地机器上调用服务时使用的端口相同。例如,如果要测试代码,您可以打开 localhost:3000
,然后在 Knative serving 中将容器端口设置为 3000
。
Knative serving 默认向 8080
发送请求。接收请求的端口的值在 PORT
环境变量中始终可用。如果可能,最佳做法是使代码侦听由 PORT
环境变量定义的值。
消除对本地文件系统的依赖以实现永久性存储
您可以通过检查应用代码来确定应用是否依赖于本地文件系统。如果应用依赖本地文件系统,您可以改用 Cloud Storage 上的文件存储服务,或者 Firestore 或 Cloud SQL 之类的数据存储服务。
添加 Dockerfile
为了将服务封装到容器中,您应该使用 Dockerfile 来定义运营环境。如需详细了解如何自定义 Dockerfile
,请参阅开发服务页面。
针对并发和内存限制进行调整
请参阅关于调整并发设置的开发提示,了解 Knative serving 中的并发以及如何优化您的服务。
确保您设定的内存限制足以满足应用的运行需求,包括满足服务所需任何临时文件的容量需求。
将日志发送到 stdout 或 stderr
Knative serving 会自动使用 Google Cloud Observability 来汇总和查看您的日志,如日志记录页面中所述。