在应用引擎上找到Nodejs应用程序
#node #googlecloud

App Engine是Google在Google Cloud Platform中提供的产品之一。它被放置在catéGoriedes Services无服务器中,因为它使其可以插入其应用程序,而不必担心我们要输入的大量配置。<< /p>

我建议您在继续之前阅读cet article,这是对Google Cloud平台的简短说明。

添加一个计费帐户以便能够使用此产品很重要。为此,请访问服务 Invoicing ,并按照说明。
Service Facturation

激活LâApiApp Engine并创建应用程序

打开Goog​​le Cloud Platform控制台,在晚面板Enter App Engine 中。然后单击激活LâApi

Activer App Engine

然后,您可以在控制台GCP中相信新的应用引擎应用程序。

选择要使用的语言(node.js for javaScript)。标准环境的存储量较少,如果不使用,您的应用程序将放置在备用环境(0度实例)中。灵活的环境使得可以提高资源以最好地使其适应应用程序,从而将应用程序置于待机状态(即使在几个月的不活动之后,至少正在进行中的一个身体)。

Langage utilisé

请注意,没有记录按钮。录制将在工作期间自动完成。
另一方面,我们被提议安装Gcloud SDK,这是下一个。

安装程序SDK GCLOUD

SDK GCLOUD是命令行 ,它使我们能够与Google Cloud Platform 进行交互,而无需浏览GCP控制台(Web接口)。并不是要用App Engine插入您的node.js应用程序。

根据您的系统,请按照指示的iciInstall gcloud CLI)的步骤。

在ubuntu(lts版本)上精确这些命令:

sudo apt-get update

sudo apt-get install apt-transport-https ca-certificates gnupg curl sudo

echo "deb https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list

curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -

sudo apt-get update && sudo apt-get install google-cloud-cli

这些命令安装gcloud和不工作的工具。
Install gcloud

配置您的工作

要插入其应用程序,您必须指示某些缺陷,特别是要使用的Google帐户,GCP项目连接到我们的应用程序,…。

对于我们的案例,让我们从将帐户连接到gcloud开始

将您的帐户连接到gcloud就像命令行一样。在您的命令行中,执行

gcloud auth login

此命令打开您的Web浏览器,只需选择要连接的帐户并接受请求的授权。

然后连接一个GCPãgcloud项目。

以下内容是指向我们将使用的Google Cloud项目。为此,执行命令

gcloud config set projet PROJECT_ID

用项目的标识符替换project_id。他可以在控制台GCP中找到。在图像上,学习云像Project_ID learning-cloud-386212

这样的项目

Obtenir PROJECT_ID

喊app.yaml文件

如果您还没有应用程序,则可以在github上克隆它:https://github.com/lexnotor/gcloud-dev.git

Project Structure
App Engine提供可以认为您的应用程序的端口,我们可以从流程访问它。

App Engine将需要一些信息(使用的语言,€)来嘲笑您的在线应用程序。此信息是在app.yaml文件中赞助的,并且该文件放在项目的根源中。将其添加到应用程序的根部。

这是此文件内容的示例

runtime: nodejs18

# le nom du service, par defaut le nom est default
service: test-deploy

# nombre d'instance maximum
automatic_scaling:
    max_instances: 1

# indique à app engine de diriger tous les paths (URL) vers l'application
handlers:
    - url: /.*
      secure: always
      redirect_http_response_code: 301
      script: auto

# commande pour demarrer son application
entrypoint: "npm run start:prod"

在此示例中:

  • Runtime :指示我们使用18 de Nodejs版本。
  • 服务:指示我们要提供服务的名称
  • automatic_scaling :指示scalabilité参数的对象
    • max_instances :此封闭表示将跨越最大实例数,对于我们的小应用程序,实例就足够了。
  • 处理者:一幅指示应用程序如何要求的物体的画
    • url :与猜测配置相比,URL的路径。 /.* =所有路径
    • 安全:配置HTTPS和HTTP的使用。 always =将所有要求重定向到https
    • redirect_http_respons_code 状态代码重定向
    • 脚本:如果auto,则将要求解决到应用程序
  • 入口点:应用程序引擎将豁免启动应用程序的命令。请注意,在此订单之前,应用程序工程师甚至对npm build豁免。对于我们的情况,咖啡馆是我们要弯曲的Nestjs应用程序。

下跌

最后一个是将我们的项目发送到Google Cloud,再次以一个顺序促进了任务。

gcloud app deploy

此订单将您的所有代码发送到云,并拒绝应用程序。

要查看玩家的纽带,请转到App Engine服务中的控制台GCP。

工厂您刚刚通过应用程序引擎在Google Cloud Platform上输入了Nodejs应用程序。请注意,这不是这样做的唯一方法。


Alexandre Chambu