我希望能得到对我在工作中面临的python设计问题的输入。
我的团队目前正在开发面向最终用户的Python实用CLI工具,供我们的数据科学家使用,这些工具主要是自动化系统操作/交互,我们正试图从用户那里抽象化。我们认为,总共有20-30个这样的python工具需要维护。在该系统中,数据科学家能够在若干预定义的码头集装箱中工作;即:
的Ubuntu容器
也就是说,用户可以根据当前任务任意创建和删除新容器。也就是说,如果他们想从头开始运行他们的项目,他们可以删除他们当前的容器并重新加载一个新的容器。
我们面临的主要设计挑战是如何将我们的实用工具部署/安装到这些容器中,同时也尊重一些我们认为对确保良好的用户体验非常重要的关键限制,即:
shebangs
。
如果有人有任何能帮助我们的想法,我们将非常感激。谢谢!
发布于 2022-10-16 15:02:35
有几种不同的方法来解决这个问题,最好的解决方案可能取决于您的特定需求和限制。
一种选择是为每个工具创建一个自定义Python虚拟环境,然后将该工具安装到该环境中。这将允许每个工具都有自己的一组依赖项,并且可以根据需要轻松地升级到Python的新版本。
另一种选择是使用Docker这样的工具来管理不同的工具。这将允许您将每个工具定义为一个单独的服务,然后根据需要轻松地部署和更新它们。
最后,您还可以使用Ansible这样的工具来管理不同的工具。这将允许您将每个工具定义为一个Ansible剧本,然后根据需要轻松地部署和更新它们。
最终,对您来说最好的解决方案可能取决于您的特定需求和约束。然而,上述所有选项都应该能够满足您的要求。
https://stackoverflow.com/questions/74088144
复制相似问题