【发布时间】:2022-01-01 13:05:48
【问题描述】:
我有一个用于创建环境的 environment.yml 文件:
name: blah
channels:
- conda-forge
dependencies:
- python=3.9
- psychopg2
# THESE ARE FOR LOCAL DEV ONLY
- jupyter
- ipykernel
- folium
如果从生产环境中排除本地开发包,则 docker 映像大小会大大节省。但是在开发机器等上进行本地测试时需要这些包。
我目前的解决方案是维护一个单独的 environment_local.yml 以在本地运行,其中包括这些包,但在 docker 构建期间运行 environment.yml 将它们排除在外。但是文件有可能在共享依赖项中不同步。
有没有办法根据命令行标志从环境中排除软件包?或者,环境文件可以相互继承和扩展吗?
【问题讨论】:
-
可能重复:stackoverflow.com/q/69548005/570918 如果您同意,请联系我。
-
同意重复是的......
-
虽然我认为线程给出了一个更简单的答案...stackoverflow.com/questions/42352841/…
-
是的,另一个很复杂,因为用户想要保证 dev 和 prod envs 使用完全相同的包构建。这对专业工程师来说非常棒,但对于不太正式的环境来说就太过分了。
标签: python dependencies conda