Docker+semantic-uiの環境でnpm installやnpm ci時に毎回セットアップを聞かれるのを避けたい
Docker+semantic-uiの環境でnpm installやnpm ci時に毎回セットアップについて聞かれるのを避けたいときどうすれば良いのかについてご紹介していこうと思います。
状況が限定的な気がするので、備忘録程度に残しておきます。
Docker+semantic-uiの環境でnpm installやnpm ci時に毎回セットアップを聞かれるのを避けたい
私は当初Dockerfileを次のように設定しておりました。
1 2 3 4 5 6 7 8 9 10 |
FROM node:10.6-alpine RUN apk update && \ apk add bash && \ apk add --no-cache python3 g++ make COPY ./test_app/package-lock.json /usr/local/test_app/package-lock.json COPY ./test_app/package.json /usr/local/test_app/package.json WORKDIR /usr/local/test_app RUN npm ci |
しかしこれでは、
RUN npm ci
のときにsemantic uiのセットアップのことについて聞かれて、Dockerのビルドが失敗してしまいます。
1 2 3 4 5 6 7 8 9 10 11 |
> semantic-ui@2.4.0 install /usr/local/test_app/node_modules/semantic-ui > gulp install [01:35:02] Using gulpfile /usr/local/test_app/node_modules/semantic-ui/gulpfile.js [01:35:02] Starting 'install'... [01:35:02] Starting 'run setup'... ? Set-up Semantic UI (Use arrow keys) ❯ Automatic (Use default locations and all components) Express (Set components and output folder) Custom (Customize all src/dist values) |
npm ciを叩いたときに自動でyを押し続けるように設定しても、最初はセットアップがうまくいくものの、いくつか聞かれたときにy以外を押すものがあり効果的ではありませんでした。
npm installやnpm ciで自動でyを入力させ続けたいとき(yオプションのような挙動をさせたいとき)
結論を言うと、semantic.jsonやsemanticのフォルダもコピーしてnpm installやnpm ciをするようにしましょう。
1 2 3 4 5 6 7 8 9 10 11 12 |
FROM node:10.6-alpine RUN apk update && \ apk add bash && \ apk add --no-cache python3 g++ make COPY ./test_app/package-lock.json /usr/local/test_app/package-lock.json COPY ./test_app/package.json /usr/local/test_app/package.json COPY ./test_app/semantic.json /usr/local/test_app/semantic.json COPY ./test_app/semantic /usr/local/test_app/semantic WORKDIR /usr/local/test_app RUN npm ci |
どうやらsemantic.jsonやsemanticのフォルダにセットアップの情報が格納されており、これらもコピーすれば自動でそれを見てくれていそうです。
終わりに
Docker+semantic-uiの環境でnpm installやnpm ci時に毎回セットアップについて聞かれるのを避けたいときどうすれば良いのかについてご紹介いたしました。
ディスカッション
コメント一覧
まだ、コメントがありません