如何在 AWS 上 host/build 类似 python 脚本的 CLI?
How to host/build a CLI like python script on AWS?
这是一个非常没有经验的问题。我只使用过 deployed/hosted 个 Web 应用程序,所以我不明白如果我想要一个类似 CLI 的程序托管给其他人 运行.
,系统会是什么样子
这是一个 python 脚本,我想在 AWS 上使用它(可能会使用 docker 容器、ECS 和 terraform。所以我想这主要是关于如何构建图片).
脚本在终端打印时需要 flags/commands、运行s 几分钟,然后在完成后停止。我如何 host/build 以便任何人都可以通过他们的 shell/terminal 访问它?是否需要某种类似于 http 服务器的服务器?它没有前端。理想情况下,许多人可以随时 运行 一次完成此操作。
编辑:更正,没有 Web GUI 前端...我添加这个是为了澄清我对这些术语的松散使用。这原则上是 API 吗?
我鼓励您查看 AWS Lambda 以了解此类内容。 AWS Lambda 允许您 运行 代码(包括 Python)而无需考虑服务器的配置。主要好处之一是您只需为软件实际执行的时间付费,而不是为虚拟机 运行闲置的时间付费。
正如您提到的,如果您想转向其他用户可以调用您的服务的 'API' 设计,您可以在 Lambda 代码前面使用 Amazon API 网关来处理此问题。这里有这些设计模式的很好的例子:https://serverlessland.com/patterns
类似这样的东西:https://serverlessland.com/patterns/apigw-lambda-cdk 听起来像您正在寻找的东西,但正如 SecurityObscurity 所提到的,您需要考虑身份验证和授权。这可以由 AWS Cognito 或 IAM 授权处理,具体取决于您的用例。
这是一个非常没有经验的问题。我只使用过 deployed/hosted 个 Web 应用程序,所以我不明白如果我想要一个类似 CLI 的程序托管给其他人 运行.
,系统会是什么样子这是一个 python 脚本,我想在 AWS 上使用它(可能会使用 docker 容器、ECS 和 terraform。所以我想这主要是关于如何构建图片).
脚本在终端打印时需要 flags/commands、运行s 几分钟,然后在完成后停止。我如何 host/build 以便任何人都可以通过他们的 shell/terminal 访问它?是否需要某种类似于 http 服务器的服务器?它没有前端。理想情况下,许多人可以随时 运行 一次完成此操作。
编辑:更正,没有 Web GUI 前端...我添加这个是为了澄清我对这些术语的松散使用。这原则上是 API 吗?
我鼓励您查看 AWS Lambda 以了解此类内容。 AWS Lambda 允许您 运行 代码(包括 Python)而无需考虑服务器的配置。主要好处之一是您只需为软件实际执行的时间付费,而不是为虚拟机 运行闲置的时间付费。
正如您提到的,如果您想转向其他用户可以调用您的服务的 'API' 设计,您可以在 Lambda 代码前面使用 Amazon API 网关来处理此问题。这里有这些设计模式的很好的例子:https://serverlessland.com/patterns
类似这样的东西:https://serverlessland.com/patterns/apigw-lambda-cdk 听起来像您正在寻找的东西,但正如 SecurityObscurity 所提到的,您需要考虑身份验证和授权。这可以由 AWS Cognito 或 IAM 授权处理,具体取决于您的用例。