返回

如何开始你的 serverless 之旅

前端

在 serverless 架构中,您无需管理服务器、操作系统或运行时。只需编写代码,剩下的事情交给云提供商来处理。serverless 开发的优势有很多,包括降低成本、提高敏捷性和可扩展性。

在本教程中,我们将使用 Knative 来构建 serverless 应用程序。Knative 是一个开源平台,用于构建、部署和管理无服务器工作负载。它可以让你轻松地将应用程序扩展到多个云提供商,并简化应用程序的管理。

先决条件

  • Kubernetes 集群
  • Knative 0.6.0
  • Docker
  • 文本编辑器

设置开发环境

  1. 安装 Knative CLI。
curl -LO "https://github.com/knative/client/releases/download/v0.6.0/client-linux-amd64.tar.gz"
tar -xvf client-linux-amd64.tar.gz
sudo mv kn /usr/local/bin/
  1. 创建一个 Kubernetes 服务帐户。
kubectl create serviceaccount knative-service-account
  1. 将服务帐户添加到 knative-serving 名称空间。
kubectl create rolebinding knative-service-account-binding \
--clusterrole=view \
--serviceaccount=default:knative-service-account \
--namespace=knative-serving
  1. 安装 Knative。
kn install --platform default

部署您的第一个 serverless 微服务

  1. 创建一个新的目录。
mkdir my-first-serverless-microservice
cd my-first-serverless-microservice
  1. 创建一个 Node.js 文件。
touch index.js
  1. 在 index.js 文件中添加以下代码。
const functions = require('@google-cloud/functions-framework');

functions.http('helloWorld', (req, res) => {
  res.send('Hello, world!');
});
  1. 安装依赖项。
npm install @google-cloud/functions-framework
  1. 打包应用程序。
npm run build
  1. 将应用程序部署到 Knative。
kn service create helloworld \
--image gcr.io/my-project/my-first-serverless-microservice \
--port 8080
  1. 获取应用程序的 URL。
kn service url helloworld
  1. 访问应用程序的 URL。
curl http://<app-url>

您应该会看到如下输出:

Hello, world!

结论

恭喜您!您已经成功地部署了您的第一个 serverless 微服务。本教程只是入门,还有很多东西需要学习。有关更多信息,请参阅 Knative 文档。