[docker] npmがインストールエラーになる時の対応

2020年3月15日

テクノロジー

ユゲタです。 「インストールエラー」とかけまして、 「受験生」と、ときます。 そのココロは・・・ 問題解決に向けて頑張りましょう。

dockerでnpmがインストールできないトラブル

Dockerfileに以下のように記述していて、 FROM ubuntu:latest RUN apt-get install -y nodejs npm buildをすると、以下のようなエラーが出ます。 The following packages have unmet dependencies: npm : Depends: node-gyp (>= 0.10.9) but it is not going to be installed E: Unable to correct problems, you have held broken packages. ERROR: Service 'web' failed to build: The command '/bin/sh -c apt-get -y install npm' returned a non-zero code: 100

解消までの道

「nodejs」やら「node-gyp」がすでにインストールされているので、エラーになっていると思って、簡易にインストール順番を変えてみても、同じエラーがでます。 おまけに、ゴミコンテナまで立ち上がって、非常に迷惑な症状です。 $ docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 49ef1ceed8c1 myntpage_web "bash /root/init.sh" 8 seconds ago Up 7 seconds 0.0.0.0:25->25/tcp, 0.0.0.0:80->80/tcp, 0.0.0.0:3337->3337/tcp web 91360b372854 39326607d087 "/bin/sh -c 'apt-get…" About a minute ago Exited (100) About a minute ago

解決!

どうやら、"libssl1.0-dev"を事前にインスールしておかないとnpmインストールでエラーが出るということを、書いてあるサイトがありました。 ありがたや!!! Dockerfileを以下のようにして、無事に問題解決することができました・・・とさ・・・ FROM ubuntu:latest RUN apt-get install -y libssl1.0-dev RUN apt-get install -y nodejs npm 参考 : https://www.trifields.jp/how-to-install-node-js-on-ubuntu1804-3544

このブログを検索

ごあいさつ

このWebサイトは、独自思考で我が道を行くユゲタの少し尖った思考のTechブログです。 毎日興味がどんどん切り替わるので、テーマはマルチになっています。 もしかしたらアイデアに困っている人の助けになるかもしれません。