App Engine 入口点的目的是什么?
What is the purpose of app engine's entrypoint?
我已经搜索了 App Engine 文档来解释什么是入口点,但坦率地说,我遇到了困难。希望 SO 上的某个人可以解释入口点的内容和目的。
入口点告诉容器在 运行 时要做什么。我最常看到 Docker,但其他容器格式也有类似的东西。
对于 App Engine,入口点设置的关键是启动侦听请求的 HTTP 服务器。这是描述入口点的 Python documentation,但页面顶部还有其他 运行 次的链接。
入口点是在容器启动时执行的 Docker command,允许您将容器配置为 运行 作为可执行文件。
对于 App Engine,入口点在 app.yaml
中指定 file, the command present in the entrypoint field will be included in the entrypoint of your app's Dockerfile, meaning that it is the one that will tell how the application has to be started when you are deploying it. The entrypoint should start a web server that will listen on the port 8080, which is the port used by App Engine to send requests to the deployed container. App Engine 提供 PORT
环境变量以便于使用。
例如:
entrypoint: gunicorn -b :$PORT main:app
通过这个入口点,您可以告诉您希望应用程序如何启动,在本例中使用 gunicorn
,以及您希望它在何处继续收听。
默认情况下,当您未在 app.yaml
文件中明确设置时,此 gunicorn
命令是 App Engine 使用的入口点。
您始终需要一个入口点,因为所有 App Engine 应用程序都是使用 Docker 容器部署的。即使您仅使用代码部署一个文件,App Engine 也会使用 app.yaml
中设置的参数构建一个 Docker 容器,因为当您使用 App Engine 部署应用程序时,内部使用的进程是build,其中图像由 App Engine 提供。
此外,当您使用 App Engine 部署应用程序时,如果您转到 GCP 控制台中的“云构建”部分,您将能够找到相关构建,您将在其中找到构建的所有步骤和信息Docker 正在部署您的 App Engine 的容器。
总而言之,App Engine 使用来自 Docker 的入口点,因为 App Engine 在内部执行部署时正在使用 Cloud Build 服务使用入口点中提供的信息为您的应用构建容器映像。
我已经搜索了 App Engine 文档来解释什么是入口点,但坦率地说,我遇到了困难。希望 SO 上的某个人可以解释入口点的内容和目的。
入口点告诉容器在 运行 时要做什么。我最常看到 Docker,但其他容器格式也有类似的东西。
对于 App Engine,入口点设置的关键是启动侦听请求的 HTTP 服务器。这是描述入口点的 Python documentation,但页面顶部还有其他 运行 次的链接。
入口点是在容器启动时执行的 Docker command,允许您将容器配置为 运行 作为可执行文件。
对于 App Engine,入口点在 app.yaml
中指定 file, the command present in the entrypoint field will be included in the entrypoint of your app's Dockerfile, meaning that it is the one that will tell how the application has to be started when you are deploying it. The entrypoint should start a web server that will listen on the port 8080, which is the port used by App Engine to send requests to the deployed container. App Engine 提供 PORT
环境变量以便于使用。
例如:
entrypoint: gunicorn -b :$PORT main:app
通过这个入口点,您可以告诉您希望应用程序如何启动,在本例中使用 gunicorn
,以及您希望它在何处继续收听。
默认情况下,当您未在 app.yaml
文件中明确设置时,此 gunicorn
命令是 App Engine 使用的入口点。
您始终需要一个入口点,因为所有 App Engine 应用程序都是使用 Docker 容器部署的。即使您仅使用代码部署一个文件,App Engine 也会使用 app.yaml
中设置的参数构建一个 Docker 容器,因为当您使用 App Engine 部署应用程序时,内部使用的进程是build,其中图像由 App Engine 提供。
此外,当您使用 App Engine 部署应用程序时,如果您转到 GCP 控制台中的“云构建”部分,您将能够找到相关构建,您将在其中找到构建的所有步骤和信息Docker 正在部署您的 App Engine 的容器。
总而言之,App Engine 使用来自 Docker 的入口点,因为 App Engine 在内部执行部署时正在使用 Cloud Build 服务使用入口点中提供的信息为您的应用构建容器映像。