LoginSignup
39
30

More than 5 years have passed since last update.

docker build --build-argするときのDockerfileにご注意

Last updated at Posted at 2016-12-19

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で以下のようなエラーになってしまいました。

スクリーンショット 2016-12-20 13.12.34.png

※config/production.jsonは存在します。

で、ECRのタスク定義のところで環境変数を設定し、再度ECRとして起動させたところ、問題なく起動しました。

スクリーンショット 2016-12-20 13.10.39.png

39
30
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
39
30