我们希望自动设置新的开发环境。
有一个项目。我们使用名称方案coreapp_c1(customer1的简称) 该项目很小。它包含配置(settings.py(django))和requirements.txt
我们使用以下步骤:
不幸的是,还有一些其他步骤需要完成:
创建一个postgres-DB,插入一个init-script,创建一个rabbitMQ队列,......这不能像普通用户那样完成。
做植物需要以root身份完成的东西的植物学方法是什么?
答案 0 :(得分:2)
自动化在Python以及其他语言中设置开发环境最近引起了很多关注。因此,根据您的要求,有多种解决方案可供选择。
通常,这些解决方案需要权衡:给定解决方案提供的隔离越多,它的开销就越大。以下是我尝试过并发现有用的东西的非排他性列表。此列表按隔离的升序排列,因此开销:
1)Fabric
“它提供了一组执行本地或远程shell命令的基本操作 (通常或通过sudo)和上传/下载文件,以及辅助 提示正在运行的用户输入或中止执行等功能。“
“从cookiecutters(项目模板)创建项目的命令行实用程序。 例如。 Python包项目,jQuery插件项目。“
3)docker
“一个开源项目,用于打包,运送和运行任何应用程序作为轻量级容器。”
4)Vagrant
“创建和配置轻量级,可重现且可移植的开发环境。”
我已经包括了Vagrant的完整性。它本质上是一个用于编程创建虚拟机的工具,因此位于列表的底部。正如您所提到的,如果您对使用自己的操作系统和API堆栈等的VM的开销不太感兴趣,那么您应该选择前三个选项中的一个 - 所有这些选项在某种程度上都是Pythonic的DRY等。
就个人而言,基于我可以从你的问题陈述中收集的有限观点,我会看cookiecutter。
答案 1 :(得分:0)