ユゲタです。
「インストールエラー」とかけまして、
「受験生」と、ときます。
そのココロは・・・
問題解決に向けて頑張りましょう。
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
0 件のコメント:
コメントを投稿