【发布时间】:2021-02-10 08:05:41
【问题描述】:
我每天都使用不同的语言,并且讨厌我的机器被许多特定于语言的安装/程序/环境弄得一团糟。因此,我目前正在探索使用 Docker+WSL2 作为我的不同项目的运行时是否足以保持我的主机干净而没有太多开销。
以 Python 为例,我当前的工作流程:
- 在主机上创建 Python 项目
- 根据相应的 Python 镜像运行 Docker 容器,并将项目目录挂载到容器中
- 在项目目录中创建虚拟环境,并在容器中使用 bash 安装所需的包
- 在容器中使用 bash 运行项目
这是我发现保持 Docker 映像通用的最简单方法,即无需在 Dockerfile 中预先安装项目特定的包。这种方法的一个缺点当然是虚拟环境最终在主机上。
其他人使用docker commit,这不是最佳实践,或者在 Dockerfile 中安装所需的包,这会导致运行我所有 Python 项目的巨大 Dockerfile。
您是否知道开销更少的更好的工作流程或有减轻虚拟环境文件夹问题的想法?
【问题讨论】:
标签: python docker workflow windows-subsystem-for-linux