我正在尝试在Windows上设置Docker开发环境。我的代码目录结构如下:
project/
node-app/
react-app-1/
react-app-2/
shared/
node-app
,react-app-1
和react-app-2
都依赖于shared
中的代码。所以,我考虑在每个应用程序中都有一个Dockerfile
,类似于这样:
FROM node:10.0
WORKDIR /app
COPY ../ .
WORKDIR /app/node-app
RUN npm install
然而,那并不行 - Docker 给我一个错误,说它是一个“禁止的路径在构建上下文之外:../”。
如何解决这个问题?在解决这个问题之后,我将设置一些 Docker Compose(再次为本地开发),因此我的理想解决方案将考虑到这一点。
project/
目录中运行docker build .
,则可以获得正确的上下文,并且您必须使用-f
/--file
指定要选择哪个 Dockerfile。您还可以在组合文件的build
部分中设置显式上下文和文件:https://docs.docker.com/compose/compose-file/#build - jonrsharpe