dockerで構築したコンテナにてgulpが走らない時の対応法
やりたいこと
-
docker-compose up -d
にて立ち上げたnodejsコンテナにて、gulp
が走らないことを解決したい
環境
$ docker exec -it node_js_1 npm -v
v6.1
$ docker exec -it node_js_1 node -v
v10.6.0
$ docker exec -it node_js_1 gulp -v
v3.9.1
原因
docker-compose up -d
にて立ち上げたnodejsコンテナにて、gulp
が走らないことを解決したい$ docker exec -it node_js_1 npm -v
v6.1
$ docker exec -it node_js_1 node -v
v10.6.0
$ docker exec -it node_js_1 gulp -v
v3.9.1
原因
タスクランナーのnode-sass
に不備があったため
解決策
node-sassをuninstallして再度install
//まずnode_jsコンテナに入る
$ docker exec -it node_js_1 bash
//コンテナ内でnode-sassをuninstall実行
$ npm uninstall node-sass
//node-sassをinstall実行
$ npm install node-sass
ちなみに、プロジェクトのルートディレクトリからでもinstallまで可能
$ docker exec -it node_js_1 npm uninstall node-sass
$ docker exec -it node_js_1 npm install node-sass
$ gulp
上記でコンパイルが成功しました。
node-sassとは
Node.jsをLibSassに関連付けされるLibraryで、高速でsassファイルをコンパイルする。
gulpfile.jsにてrequireして使う。
https://www.npmjs.com/package/node-sass
LibSassとは
C++で書かれたコンパイラー
考察
gulp-scssとの違いを調査したい。
そもそもこれDocker関係なかった...
強いて言えばdocker-compose.ymlやDockerfileの中身が間違っていたくらいか...
フロント超絶初心者なのでご指摘等お願いします。
Author And Source
この問題について(dockerで構築したコンテナにてgulpが走らない時の対応法), 我々は、より多くの情報をここで見つけました https://qiita.com/Cesaroshun/items/1b3754434f27b13d675d著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .