Javascript 找不到在docker环境中运行的节点js应用程序的模块错误
这个应用程序是用ES6编写的,并使用babel编译成ES5。生成文件按以下顺序存储在生成文件夹中。dockerfile位于生成文件夹的外部Javascript 找不到在docker环境中运行的节点js应用程序的模块错误,javascript,node.js,docker,containers,dockerfile,Javascript,Node.js,Docker,Containers,Dockerfile,这个应用程序是用ES6编写的,并使用babel编译成ES5。生成文件按以下顺序存储在生成文件夹中。dockerfile位于生成文件夹的外部 -构建 ---公开的 ---服务器 ---共享 ---package.json -Dockerfile在不知道C:\portal\environments\development的内容的情况下,我假设其中没有server/index.js 我不明白为什么即使所有文件夹 在docker容器中就位(运行ls-显示文件夹 容器中的结构)。我还是无法启动容器 因为
-构建
---公开的
---服务器
---共享
---package.json
-Dockerfile
在不知道C:\portal\environments\development
的内容的情况下,我假设其中没有server/index.js
我不明白为什么即使所有文件夹
在docker容器中就位(运行ls-显示文件夹
容器中的结构)。我还是无法启动容器
因为这个错误
RUN ls
在复制build dir之后执行,在构建docker映像时,如果在启动容器时运行ls
,您将看到没有server/index.js
当您将build
文件夹复制到/usr/src/app/
时,在/usr/src/app
上装载development
文件夹时,您将覆盖该文件
最简单的方法是在/usr/src/app/development
上装载C:\portal\environments\development
docker run -d -v C:\portal\environments\development:/usr/src/app/development/ -p 3000:80 f057e4bc8191
此外,您还可以在/usr/src/app
上装载development
,然后使用在映像上生成的build/server
:
-v C:\portal\environments\development:/usr/src/app/ -v /usr/src/app/server
您必须对构建映像中需要的每个文件夹执行此操作
-v /usr/src/app/server -v /usr/src/app/public -v ...
我在运行docker容器时遇到了类似的问题。我发现我可能创建了错误的图像,我通过删除图像并重建来解决这个问题。但首先我必须删除图像的现有容器,如下所示
docker rm containerId
docker rmi imageId
然后我删除了下面的图片
docker rm containerId
docker rmi imageId
然后,我重建了图像并运行以创建一个新容器 显示以下内容:
C:\portal\environments\development
,该文件夹中是否有服务器
目录?@MarcosCasagrande该文件夹包含运行应用程序所需的配置文件。服务器文件夹包含在我在开头提到的构建文件夹中。请稍后查看我的答案。请检查更新的问题。我听了你在这里提到的。我克服了我一开始提到的问题,但得到了另一个问题。进入容器,在development
上运行ls
,并显示输出