在 Azure 中部署 Python (Tkinter) 桌面 UI

问题描述 投票:0回答:1

亲爱的,

我想在 Azure 中部署用户界面 (UI) 以向最终用户提供访问权限。这个“desktopUI是使用Python中的customtkinter库(和PyCharm作为IDE)构建的(直接在我的本地计算机中,没有任何容器或虚拟机),它基于Tkinter库(如下所示)。

import tkinter
import tkinter.messagebox
import customtkinter

仅供参考,UI 导入一个 pickle 文件,该文件执行 ML 算法,并从中生成预测。用户界面非常简单,如下图所示:

我正在寻找最简单的方法来将其部署在Azure中,这种方法成本较低,但在性能(执行、读取输入和可视化输出)方面并没有很大限制。目的很简单:

  1. 在 Azure 中部署代码。
  2. 生成“.exe”或任何其他方法,使“业务”用户只需单击即可启动 UI,而无需转到代码并从那里执行它。

我在下面列出了两种方法,我不确定它们是否合适。因此,请随时提出最简单的一个(根据您的经验和专业),如果您有任何建议的简单步骤,请分享。

  1. 构建 Microsoft 虚拟机并在其中部署 UI。这里的问题是:既然我们使用“Azure ML”来训练 ML 模型,那么将 pickle 文件(UI 使用的)推送到 VM 是否容易?对于“商业”用户来说,转到 UI 并在此虚拟机中执行它是否方便?
  2. Azure 应用服务 和/或 Azure 逻辑应用 将 UI 部署为 Web 应用程序。这里的问题是:UI 是使用 Tkinter 构建为桌面应用程序的。因此,是否有必要使用其他库/API(如 Django 或 Flask)转换我们的代码(这是我们最不想做的事情)?
  3. 或您提出/推荐的任何其他方法。目的是选择最简单且不受性能限制的方式!

谢谢!

python azure tkinter deployment desktop-application
1个回答
0
投票
  • Tinker 是用于构建应用程序的传统 UI 框架。为了回答您的问题,可以在虚拟机中部署应用程序,但要访问该应用程序,您的用户必须有权访问虚拟机。
  • 我建议制作一个 Web 应用程序,并使用 nginx 或 Apache 等 Web 服务器将其托管在虚拟机中。如果是 Windows VM,还可以考虑使用 IIS Web 服务器进行部署。
  • 您甚至可以将 Web 应用程序创建为容器,并在相应的云环境中使用基于容器的服务托管它(这里是 Azure )。
© www.soinside.com 2019 - 2024. All rights reserved.