我是新来码头的。
我运行了一个node-10镜像,在运行的容器中,我克隆了一个存储库,运行了一个应用程序,该应用程序启动了一个带有文件监视器的服务器。我需要访问容器中的代码库,在windows主机上运行的IDE中打开它。如果这样做了,那么我也希望当我在IDE中更改文件时,这些更改会导致容器中的文件守护程序。
任何帮助都是非常感谢的。谢谢,
发布于 2018-10-17 21:51:49
您正在寻找的概念称为volumes。您需要启动一个容器并在其中挂载一个主机目录。对于容器,它将是一个常规文件夹,它将在其中创建文件。对于你来说,它也将是一个常规的文件夹。任何一方所做的更改都将对另一方可见。
docker run -v /a/local/dir:/a/dir/in/your/container但请注意,您可能会遇到需要单独解决的permission issues。
发布于 2018-10-17 21:55:23
这取决于您想要如何处理这些文件。
您可以使用docker cp命令将文件复制到容器中或从容器中复制文件。
然而,在我看来,您是在使用docker进行开发,所以您应该改为挂载一个卷,也就是说,您在主机上挂载一个目录作为docker中的卷,因此写入该目录的任何内容都将显示在容器中,反之亦然。
例如,如果您有在windows计算机上使用C:\src进行开发的代码库,那么您可以运行docker run -v c:\src:/app这样的docker,其中/app是该节点正在查找的位置。然而,对于Windows来说,有一些事情需要考虑,因为Docker不是Windows原生的,所以先看一下documentation。
发布于 2018-10-17 21:54:22
您好,我认为您应该使用挂载卷的源代码,并编辑您的代码从您的IDE通常:
docker run -it -v "$PWD":/app -w /app -u node node:10 yarn dev在这里,docker将创建一个镜像,将工作目录设置为"/app",将当前目录挂载到"/app“,并在启动时使用"node”用户(非根用户)运行“dev”。
希望这能帮上忙。
https://stackoverflow.com/questions/52856353
复制相似问题