Приложение Vue.js на док-контейнере с горячей перезагрузкой - PullRequest
0 голосов
/ 11 ноября 2018

У меня значительная задержка и высокая загрузка процессора при запуске моего приложения vue.js на экземпляре Docker.

Это моя настройка докера

докер-compose.yml

version: '2'
services:

  app:
    build:
      context: ./
      dockerfile: docker/app.docker
    working_dir: /usr/src/app
    volumes:
    - ~/.composer-docker/cache:/root/.composer/cache:delegated
    - ./:/usr/src/app
    stdin_open: true
    tty: true
    environment:
    - HOST=0.0.0.0
    - CHOKIDAR_USEPOLLING=true
    ports:
    - 8080:8080

app.docker

# base image
FROM node:8.10.0-alpine

# Create app directory
WORKDIR /usr/src/app

# Install app dependencies
COPY package*.json ./

RUN npm install

# Bundle app source
COPY . .

EXPOSE 8080

CMD [ "npm", "run", "serve"]

эта настройка работает нормально, когда я набираю docker-compose up -d и мое приложение загружается в http://localhost:8080/ но горячая перезагрузка происходит через 10 секунд, затем через 15 секунд она продолжает расти, а загрузка моего ноутбука увеличивается на 60% и продолжает увеличиваться

Я работаю на MacBook Pro с оперативной памятью 16 ГБ, а для докера я включил 4 процессора и 6 ГБ оперативной памяти.

как решить эту проблему?

1 Ответ

0 голосов
/ 11 ноября 2018

Добавьте один из параметров delegated или cached в том, монтирующий каталог вашего приложения. Я испытал значительное увеличение производительности при использовании кеширования, в частности:

volumes:
  - ~/.composer-docker/cache:/root/.composer/cache:delegated
  - ./:/usr/src/app:cached
...