Docker远程主机能否保持其文件与本地计算机同步?需要自动重新加载的Django项目

Docker远程主机能否保持其文件与本地计算机同步?需要自动重新加载的Django项目,django,docker,docker-machine,Django,Docker,Docker Machine,我正在考虑购买一台新的MacBookM1。Docker Desktop显然无法使用他们的Rosetta 2引擎,我所有的开发工作都依赖Docker Desktop和一个本地开发环境,当文件发生更改时,它会自动重新加载 我在Docker远程主机方面做得不多,但我认为在Docker重写其引擎之前,这可能是一个权宜之计。谷歌让我失望了。。。您能保持本地计算机上的文件与Docker远程主机同步吗?不,Docker不这样做。相反,Docker将您的应用程序代码打包成一个映像;该映像可以传输到存储库(Doc

我正在考虑购买一台新的MacBookM1。Docker Desktop显然无法使用他们的Rosetta 2引擎,我所有的开发工作都依赖Docker Desktop和一个本地开发环境,当文件发生更改时,它会自动重新加载


我在Docker远程主机方面做得不多,但我认为在Docker重写其引擎之前,这可能是一个权宜之计。谷歌让我失望了。。。您能保持本地计算机上的文件与Docker远程主机同步吗?

不,Docker不这样做。相反,Docker将您的应用程序代码打包成一个映像;该映像可以传输到存储库(Docker Hub是最突出的选项),然后在远程系统上运行,而无需直接安装应用程序代码或解释器。除了映像系统之外,Docker无法直接将文件从一个系统传输或装载到另一个系统(您可以执行创建NFS支持的命名卷之类的操作,但您需要自己运行NFS服务器)

对于日常开发,使用语言的本机隔离系统通常比使用Docker模拟本地开发环境更有效。对于Python,考虑使用一个像PIPFrm这样的工具来创建一个虚拟环境。Python相当独立于平台,所以您不应该注意到使用Apple silicon和Intel的任何问题


<>不要考虑使用DOCKER远程API。如果您没有完美地配置它,那么使用它作为主机的根目录就很简单(在野外有很多这样的实例)。即使对其进行了配置,也无法使用它从本地系统装载文件(始终相对于其运行的docker主机解释
docker run-v
bind mount选项)。如果出于任何原因需要直接在远程主机上工作,请使用普通的ssh连接。

有趣的是,我太偏向Docker了,以至于忘记了标准的Python virtualenv设置。这是一个很好的观点。我只需要在virtualenv上开发,prod仍然可以是Docker。