Dockerインスタンスでvue.jsアプリを実行すると、大幅な遅延と高いCPU使用率が発生します。
これは私のDockerセットアップです
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秒は増加し続けますラップトップのCPU使用率は60%になり、それでも増加しています
私は16GBのRAMを搭載したMacBook Proを使用しており、Dockerでは4CPUと6GBのRAMを有効にしています。
この問題はどのように解決できますか?
delegated
またはcached
オプションのいずれかをアプリディレクトリをマウントするボリュームに追加します。特にキャッシュを使用すると、パフォーマンスが大幅に向上しました。
volumes:
- ~/.composer-docker/cache:/root/.composer/cache:delegated
- ./:/usr/src/app:cached