如何将fastapi api部署到数字水滴



我已经建立了一个fastapi API,我有一个运行在Ubuntu上的数字海滴机。我不知道如何将其部署到服务器,以便其他用户/机器可以使用API。我在网上找不到任何关于Droplets或服务器的具体信息,所以任何和所有的指导都将不胜感激。我不确定如何准确地阐述这个问题,所以如果我需要提供任何进一步的澄清,请发表评论。谢谢

恐怕没有简单的答案。在部署应用程序时有很多选择,这取决于您是否需要任何系统依赖项,您的应用程序是否为无状态等。

使用Docker和Digital Oceans的应用程序平台是一种相对简单且文档齐全的部署方式。

步骤是:

  1. 将您的应用程序封装在Docker容器中,生成Docker映像-在FastAPI的文档中实际上有一个循序渐进的指南
  2. 将此映像推送到容器注册表-在这种情况下,您可能需要使用DO的注册表(此处为文档(
  3. 让你的提供商(DO(负责服务器的工作——你给他们图像,他们为你提供服务器。谷歌云平台或亚马逊AWS等其他提供商也提供类似的解决方案。在Digital Ocean管理面板中,您可以在Create > App下找到

当然还有其他选择。既然你已经提到你已经准备好了DO液滴,你可以很容易地在那里运行容器。我提供的解决方案只是您的选择之一。此外,如果你需要数据库、Redis等缓存解决方案,你可能会发现自己的设置更具成本效益。特别是因为听起来你是新手,而且你的应用程序不是一个很大的项目。最重要的是,不要让这个答案吓到你自己在液滴上设置部署——这绝对也是一个非常可行的解决方案。

分叉这个github并将API作为应用程序模板运行,它拥有所有设置。

  1. 如图所示使用Docker文件(这可以直接在液滴上运行,也可以作为应用程序运行(
  2. 使用Procfile(这运行一个应用程序web服务(

https://github.com/kabuchanga/fastapi-apptst

最新更新