как сохранить живую перезагрузку, когда докернизируешь мое приложение angular - PullRequest
0 голосов
/ 21 февраля 2020

, так что я новичок в docker, я пытался докернизировать мое angular приложение, у меня есть некоторые проблемы с ng serve в моем docker контейнере, выполняемом docker -compose. вот dockerfile:

FROM node

WORKDIR /usr/src/app

ENV PATH /usr/src/app/node_modules/.bin:$PATH

COPY package.json /usr/src/app/package.json
RUN npm i
RUN npm i -g @angular/cli --unsafe

COPY . /usr/src/app


CMD ng serve --host 0.0.0.0 

и вот мой docker -компонентный файл:

version: '3'
services:
    app:
        container_name: app
        build:
            context: ./app
            dockerfile: dockerfile
        volumes:
            - './app'
            - './app/node_modules'
        ports:
            - '4201:4200'

все работает отлично, однако при редактировании любого файла я не получаю никакой перезагрузки в реальном времени docker контейнер, мне нужно перезапустить контейнер, чтобы получить изменения. Я использую linux Debian 10.

1 Ответ

0 голосов
/ 21 февраля 2020

Когда я сталкивался с этой проблемой в прошлом, когда состояние файла моего контейнера docker не совпадает с моим локальным состоянием файла, это обычно означает, что ваша точка входа volumes и ваша docker должны совпадать.

Например, в вашем Dockerfile вы перемещаете все свои локальные файлы в /usr/src/app.

Однако в вашем docker-compose.yml вы перемещаете их в /app вместо того, чтобы /usr/src/app вы определили в своем Dockerfile.

Мой совет - попробовать придерживаясь простого перехода к /app в обоих определениях.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...