返回
如何开始你的 serverless 之旅
前端
2024-01-21 11:24:22
在 serverless 架构中,您无需管理服务器、操作系统或运行时。只需编写代码,剩下的事情交给云提供商来处理。serverless 开发的优势有很多,包括降低成本、提高敏捷性和可扩展性。
在本教程中,我们将使用 Knative 来构建 serverless 应用程序。Knative 是一个开源平台,用于构建、部署和管理无服务器工作负载。它可以让你轻松地将应用程序扩展到多个云提供商,并简化应用程序的管理。
先决条件
- Kubernetes 集群
- Knative 0.6.0
- Docker
- 文本编辑器
设置开发环境
- 安装 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/
- 创建一个 Kubernetes 服务帐户。
kubectl create serviceaccount knative-service-account
- 将服务帐户添加到 knative-serving 名称空间。
kubectl create rolebinding knative-service-account-binding \
--clusterrole=view \
--serviceaccount=default:knative-service-account \
--namespace=knative-serving
- 安装 Knative。
kn install --platform default
部署您的第一个 serverless 微服务
- 创建一个新的目录。
mkdir my-first-serverless-microservice
cd my-first-serverless-microservice
- 创建一个 Node.js 文件。
touch index.js
- 在 index.js 文件中添加以下代码。
const functions = require('@google-cloud/functions-framework');
functions.http('helloWorld', (req, res) => {
res.send('Hello, world!');
});
- 安装依赖项。
npm install @google-cloud/functions-framework
- 打包应用程序。
npm run build
- 将应用程序部署到 Knative。
kn service create helloworld \
--image gcr.io/my-project/my-first-serverless-microservice \
--port 8080
- 获取应用程序的 URL。
kn service url helloworld
- 访问应用程序的 URL。
curl http://<app-url>
您应该会看到如下输出:
Hello, world!
结论
恭喜您!您已经成功地部署了您的第一个 serverless 微服务。本教程只是入门,还有很多东西需要学习。有关更多信息,请参阅 Knative 文档。