我有一个非常简单的Dockerfile:
FROM node:current-alpine3.14 AS baseImage
WORKDIR /app
COPY package* .
RUN npm install
COPY . .
CMD ["npm", "run", "watch"]
然后我运行:
docker build . -t myImage
接着是 docker run -p 8080:3000 -v /c/myFolder:/app myImage
所以基本上我想要在容器内的应用程序文件夹与我的主机上的 C:\myFolder 之间建立“共享”。
但它不起作用: 例如,如果我更新了 C:\myFolder\index.js 文件,则更改不会在容器中发生。
下面是docker inspect myContainer
在 Mounts 部分返回的内容。
这是否与转义 / 路径格式有关?或者我在使用 volume 或 WORKDIR 时漏掉了一些基础知识?
Mounts : Mounts 看起来认为 "Program Files/Git/app" 是目标 / 容器文件夹,但它应该简单地是 "/app"
apk add nano
来安装nano。有了它,编辑index.js并分享给我们,以检测变化。 - JRichardszOCI 运行时执行失败:执行失败:container_linux.go:380:启动容器进程导致:exec:"C:/Program Files/Git/usr/bin/sh":stat C:/Program Files/Git/usr/bin/sh:没有那个文件或目录:未知``` 为什么它要寻找 C:/Program Files/Git/usr/bin/sh?
- LauDemdocker run -it -v /c/myFolder:/app ubuntu
并验证此简单容器是否能够处理该卷。在/c/myFolder
目录下创建一个文件,然后在容器内检查/app
文件夹中是否存在这个新文件。 - JRichardsz