我有一个有效的码头图片,我正在使用这些卷的docker-compose:
volumes:
- .:/usr/src/node-app
- /usr/src/node-app/node_modules/node-sass/
设置第一行,以便我可以修改运行容器中显示的本地代码。第二行应该确保排除node-sass
。这似乎在其他一些项目上运作良好,但不是我现在正在做的工作,我找不到差异。
我的Dockerfile
在启动时COPY . .
后跟npm install
,但.dockerignore
中有node_modules*
,重建后容器立即正常运行。
一段时间后,它失败了,因为我的机器node-sass文件夹最终在正在运行的容器上,所以它有一个Mac二进制文件而不是所需的Linux二进制文件。起初我认为当我运行npm install
时发生了这种情况,但我刚刚安装了一个任意新的软件包,更新了一个JS文件,看到我的服务器重新启动,但事情仍然有效。我不知道为什么二进制文件会在以后的某个时间被覆盖,但它每小时都会发生。