我有以下目录结构
|-Dockerfile
|-README.md
|-angula.json
|-package.json
|-...
|-src
|-index.html
|-main.ts
|-...
|app
|-app.component.html
|...
现在,我希望在启动时将所有内容复制到容器中。为此,我将以下内容放入Dockerfile:
From node:12.15.0-alpine
RUN mkdir -p /app
WORKDIR /app
COPY package.json /app/
RUN ["npm","install"]
COPY . /app
EXPOSE 4200/tcp
CMD ["npm", "start", "--", "--host", "0.0.0.0", "--poll", "500"]
当我现在构建和运行Dockerfile时,我遇到了以下问题,即目录src
及其所有子目录都没有被复制。
当我运行docker exec -it [container-name] sh
,然后输入sh
时,所有与Dockerfile在同一目录下的文件都在那里。但是,如果我进入src
文件夹,它是空的。
我希望使用COPY . /app
将整个文件夹及其所有子目录复制到容器中。为什么不是这样呢?我错过了什么?
2条答案
按热度按时间fslejnso1#
这是一个非常愚蠢的错误。。当我挂载
src
目录时,我使用了${pwd}
而不是$(pwd)
,这导致了空文件夹,即使我之前复制了。fwzugrvs2#
我不得不从.dockerignore中删除src条目