有没有办法从谷歌云运行已经构建好的python API?
我构建了一个运行在本地机器上的python API。我想从Google Cloud SDK运行此API,但在查看文档并在Google上搜索“从Google Cloud SDK运行本地python API”的每一个变体之后,我没有找到任何不涉及我对脚本进行大量重构的内容。我有一种预感,“google run”或“API endpoint”可能是我所寻找的,但作为Firestore以外的所有产品的完全新手(如果不需要的话,我宁愿不将我的整个API转换成Firestore),我想问一下是否有一种简单的方法可以做到这一点有没有办法从谷歌云运行已经构建好的python API?,python,python-3.x,google-cloud-platform,google-cloud-storage,Python,Python 3.x,Google Cloud Platform,Google Cloud Storage,我构建了一个运行在本地机器上的python API。我想从Google Cloud SDK运行此API,但在查看文档并在Google上搜索“从Google Cloud SDK运行本地python API”的每一个变体之后,我没有找到任何不涉及我对脚本进行大量重构的内容。我有一种预感,“google run”或“API endpoint”可能是我所寻找的,但作为Firestore以外的所有产品的完全新手(如果不需要的话,我宁愿不将我的整个API转换成Firestore),我想问一下是否有一种简单的
tl;dr当我在本地控制台中简单地键入“python apiscript.py”时,API成功运行,有没有一种方法可以将其传输到Google Cloud,而无需对脚本本身进行太多调整?IMO,便携式应用程序最简单的解决方案是使用容器。要以无服务器模式托管容器,可以使用 在《入门指南》中,您有一个python示例。您的主要任务是创建一个 我根据您的描述修改了脚本,并假设您有一个
requirements.txt
依赖项文件
现在,构建您的容器
gcloud builds submit --tag gcr.io/<PROJECT_ID>/apiscript
gcloud builds submit--标记gcr.io//apiscript
用您的项目ID替换项目ID,而不是项目名称(即使有时是相同的,这也是新来者的常见错误)
部署在云上运行
gcloud run deploy --region=us-central1 --image=gcr.io/<PROJECT_ID>/apiscript --allow-unauthenticated --platform=managed apiscript
gcloud run deploy--region=us-central1--image=gcr.io//apiscript--allow unauthenticated--platform=managed apiscript
我假设您的API在端口8080上提供。否则,您需要添加一个--port
参数来覆盖它
这应该足够了
这里是一个入门示例,您可以更改区域、安全模式(这里没有安全模式)、名称和项目
此外,对于此部署,将使用计算引擎默认服务帐户。如果需要,您可以使用其他服务帐户,但在任何情况下,您都需要授予已使用的服务帐户访问Firestore数据库的权限。IMO,便携式应用程序最简单的解决方案是使用容器。要以无服务器模式托管容器,可以使用 在《入门指南》中,您有一个python示例。您的主要任务是创建一个 我根据您的描述修改了脚本,并假设您有一个
requirements.txt
依赖项文件
现在,构建您的容器
gcloud builds submit --tag gcr.io/<PROJECT_ID>/apiscript
gcloud builds submit--标记gcr.io//apiscript
用您的项目ID替换项目ID,而不是项目名称(即使有时是相同的,这也是新来者的常见错误)
部署在云上运行
gcloud run deploy --region=us-central1 --image=gcr.io/<PROJECT_ID>/apiscript --allow-unauthenticated --platform=managed apiscript
gcloud run deploy--region=us-central1--image=gcr.io//apiscript--allow unauthenticated--platform=managed apiscript
我假设您的API在端口8080上提供。否则,您需要添加一个--port
参数来覆盖它
这应该足够了
这里是一个入门示例,您可以更改区域、安全模式(这里没有安全模式)、名称和项目
此外,对于此部署,将使用计算引擎默认服务帐户。如果需要,您可以使用另一个服务帐户,但在任何情况下,您都需要授予已使用的服务帐户访问Firestore数据库的权限。您在哪一步遇到此问题?图像名称只能用小写,不能使用u下划线问题出在下划线上。谢谢你的帮助!您在哪一步遇到此问题?图像名称只能用小写,不能使用u下划线问题出在下划线上。谢谢你的帮助!