らいふうっどの閑話休題

興味のあることをゆる~く書いていく

MaxListenersExceededWarning: Possible EventEmitter memory leak detected. tips

Docker Angular
Dockerizing an Angular App with Karma and Protractor containers を試してみて、 MaxListenersExceededWarning: Possible EventEmitter memory leak detected. に遭遇したときのメモ
A note on trying Dockerizing an Angular App with Karma and Protractor containers and encountering MaxListenersExceededWarning: Possible EventEmitter memory leak detected.

ブログ記事の Dockerfile ファイルを実装後、 docker build を実行したら、下記エラーが発生
When docker build is executed after implementing Dockerfile file of blog post, the following error occurs

➜  ng-dockerizing git:(master) ✗ docker build -t ng-dockerizing:prod .
Sending build context to Docker daemon  290.8MB
Step 1/11 : FROM node:alpine as builder
 ---> 8880b18e5207
Step 2/11 : COPY package.json package-lock.json ./
 ---> Using cache
 ---> f028b2d6387c
Step 3/11 : RUN npm ci && mkdir /ng-dockerizing && mv ./node_modules ./ng-dockerizing
 ---> Running in 1768cfde52e9
(node:6) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 drain listeners added to [TLSSocket]. Use emitter.setMaxListeners() to increase limit
 :
 :
(node:6) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 drain listeners added to [TLSSocket]. Use emitter.setMaxListeners() to increase limit

> fsevents@1.2.9 install /node_modules/webpack-dev-server/node_modules/fsevents
> node install
 :
 :
> @angular/cli@8.2.2 postinstall /node_modules/@angular/cli
> node ./bin/postinstall/script.js

added 1085 packages in 42.247s
Removing intermediate container 1768cfde52e9
 ---> 8f2e18ff652f
Step 4/11 : WORKDIR /ng-dockerizing
 ---> Running in 907c44820503
Removing intermediate container 907c44820503
 ---> 6cdea1d1ae53
Step 5/11 : COPY . .
 ---> 6bd6b85f49f3
Step 6/11 : RUN npm run ng build -- --prod --output-path=dist
 ---> Running in 63e569baa171

> ng-dockerizing@0.0.0 ng /ng-dockerizing
> ng "build" "--prod" "--output-path=dist"


chunk {0} runtime-es2015.b2aca5be9e7b8cc1a1b4.js (runtime) 1.41 kB [entry] [rendered]
 :
 :
chunk {2} polyfills-es5.b71e50d75ad86204c322.js (polyfills) 118 kB [initial] [rendered]
Date: 2019-08-24T08:31:14.920Z - Hash: 26e87d3c676623e10980 - Time: 31228ms
Removing intermediate container 63e569baa171
 ---> 6c8fdfdd7be9
Step 7/11 : FROM nginx:alpine
alpine: Pulling from library/nginx
9d48c3bd43c5: Pull complete
13bf8394c846: Pull complete
Digest: sha256:e0f88b21626f56e5d9e038da863aee331640efb03ca7d8f453ed8243343acfaa
Status: Downloaded newer image for nginx:alpine
 ---> 41c8c3458a93
Step 8/11 : COPY nginx/default.conf /etc/nginx/conf.d/
COPY failed: stat /var/lib/docker/tmp/docker-builder601496124/nginx/default.conf: no such file or directory
➜  ng-dockerizing git:(master) ✗ 

エラー発生時の環境 / Environment at the time of error occurrence

➜  ~ npm -v
6.11.2
➜  ~ node -v
v10.16.0
➜  ~
➜  ~ ng --version

     _                      _                 ____ _     ___
    / \   _ __   __ _ _   _| | __ _ _ __     / ___| |   |_ _|
   / △ \ | '_ \ / _` | | | | |/ _` | '__|   | |   | |    | |
  / ___ \| | | | (_| | |_| | | (_| | |      | |___| |___ | |
 /_/   \_\_| |_|\__, |\__,_|_|\__,_|_|       \____|_____|___|
                |___/


Angular CLI: 8.3.0
Node: 10.16.0
OS: darwin x64
Angular:
...

Package                      Version
------------------------------------------------------
@angular-devkit/architect    0.803.0
@angular-devkit/core         8.3.0
@angular-devkit/schematics   8.3.0
@schematics/angular          8.3.0
@schematics/update           0.803.0
rxjs                         6.4.0

➜  ~

調査結果下記のissueを発見 / Find the following issues

github.com

対策は、以下の通り / The measures are as follows

➜  ~ npm install -g npm@6.10.3
/Users/lifewood/.nodebrew/node/v10.16.0/bin/npm -> /Users/lifewood/.nodebrew/node/v10.16.0/lib/node_modules/npm/bin/npm-cli.js
/Users/lifewood/.nodebrew/node/v10.16.0/bin/npx -> /Users/lifewood/.nodebrew/node/v10.16.0/lib/node_modules/npm/bin/npx-cli.js
+ npm@6.10.3
updated 13 packages in 12.083s
➜  ~ node -v
v10.16.0
➜  ~ npm -v
6.10.3

npm のバージョンを下げて解決しました。 / Resolved by lowering the version of npm. 6.11.2 => 6.10.3

npm リリース情報 / npm release information

github.com

サンプルコード / Sample Code

github.com