簡體   English   中英

為什么 nodemon 忽略我在 angular 中的 /src 文件

[英]Why is nodemon ignoring my /src file in angular

我正在使用 WSL2 和 Docker。

docker-compose:

version: "3"
services:
    web:
        build: ./web
        command: sh -c "yarn; yarn run build && yarn start"
        ports:
            - "80:80"
            - "443:443"
        working_dir: /usr/src/web
        volumes:
            - ./web:/usr/src/web:cached

DockerFile:

FROM node:14

RUN mkdir -p /usr/src/web && chown -R node:node /usr/src/web
WORKDIR /usr/src/web
COPY package.json /usr/src/web
COPY ./src /user/src/web
COPY .npmrc /usr/src/web

RUN yarn
RUN rm -f .npmrc

COPY . /usr/src/web

EXPOSE 80
EXPOSE 443

CMD ["yarn", "start"]

package.json:

  "scripts": {
    "start": "nodemon -L --experimental-json-modules --no-warnings server.js",
    "build": "ng build --prod --watch"
  }

我最終要做的是使用 docker、wsl2、node、angular 和 express 創建一個開發環境。 我對 docker 還很陌生,所以我真的不知道自己在做什么。 但是,當我構建並運行所有內容時,就會出現問題。 Nodemon 檢測到從我的源文件夾中所做的所有更改,預計應用程序內的 /src 文件。

因此,即使我沒有嘗試使用 docker,我嘗試使用的方法也不起作用。 所以我不確定為什么我認為它可以與 docker 一起使用。 我為解決這個問題所做的工作是創建兩個獨立的服務來處理網站的構建/服務。

我將我的 docker-compose 文件更改為此

docker-compose.yml:

version: "3"
services:
    web-build:
        build: ./web
        command: sh -c "yarn; yarn run build"
        working_dir: /usr/src/web
        volumes:
            - ./web:/usr/src/web:cached
    web-serve:
        build: ./web
        command: sh -c "yarn; yarn start"
        ports:
            - "80:80"
            - "443:443"
        volumes:
            - ./web:/usr/src/web:cached

我停止使用 nodemon,因為在 ng build 上調用 --watch 就足夠了。 我注意到的一點是,將源文件更新到服務器時存在延遲

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM