12月中旬なのに、今週は暖かい一週間だそうですね。さて
#> 今日のお悩み
dockerでbuildしたときに、付与している --build-argのパラメータが使われていないよ、という警告が出る。
docker build --build-arg NODE_ENV=development --no-cache -t api-test .;
*** [Warning] One or more build-args [NODE_ENV] were not consumed ****
> 解決
DockerfileにARGの定義が必要でした。
ARG NODE_ENV
ENV NODE_ENV ${NODE_ENV:-production}
詳細は以下のリファレンスのARGの部分を読んでいただきたいのですが
Dockerfile reference - Docker
Dockerfile側にARGの定義をしておかないと、build時に --build-argを指定してもエラーになってしまいます
> AWS ECSで動作させた時にうまく渡らなかった?
これは同様に起きている人がいるのかどうかわからないので、とりあえず対処法だけ。
上記の解決の通り、Dockerfileを書いてbuildしてECRにプッシュして、ECRでサービスとして動作させたのですが、
cloudwatchで以下のようなエラーになってしまいました。
※config/production.jsonは存在します。
で、ECRのタスク定義のところで環境変数を設定し、再度ECRとして起動させたところ、問題なく起動しました。