【发布时间】:2021-10-15 02:49:48
【问题描述】:
所以我在我使用的烧瓶中按预期工作......
volumes:
- ./api:/app
我在api 中更改的任何文件都会被正在运行的会话拾取。我想对前端代码做同样的事情。
对于 node/nginx,我使用了以下配置。获取文件更改的唯一方法是重建。我希望像对 python 所做的那样提取文件更改,但对于为什么类似的设置不适用于 src 文件有点卡住了。有人知道为什么会这样吗?
本地路径结构
public\
src\
Dockerfile.client
docker--compose.yml
码头文件...
FROM node:16-alpine as build-step
WORKDIR /app
ENV PATH /app/node_modules/.bin:$PATH
COPY package.json ./
COPY ./src ./src
COPY ./public ./public
RUN yarn install
RUN yarn build
FROM nginx:alpine
COPY --from=build-step /app/build /usr/share/nginx/html
COPY nginx/nginx.conf /etc/nginx/nginx.conf
码头工人撰写
client:
build:
context: .
dockerfile: Dockerfile.client
volumes:
- ./src:/src
restart: always
ports:
- "80:80"
depends_on:
- api
【问题讨论】:
-
除了重建图像之外,您的问题还不是很清楚。应该通过简单地从现有映像重新创建容器来获取卷更改(例如,不使用像
docker-compose up -d --force-recreate这样的命令进行重建) -
我添加了一些更清晰的文本 - 我希望我在本地进行的更改/点击保存被拾取,因为它目前对我对本地
api文件夹中的文件所做的更改进行了烧瓶.我已经为client和src完成了相同类型的卷挂载,但文件更改没有被拾取
标签: node.js docker nginx docker-compose dockerfile