Dockerfileで引数を元にベースイメージを指定する
目的
- docker buildの引数でDockerfileのベースイメージ(FROM部分)を指定する
やりかた
Dockerfile
ARG BASE_IMAGE
FROM ${BASE_IMAGE}:latest
RUN hogehoge
コマンド
docker build --build-arg BASE_IMAGE=XXXXXXXX.dkr.ecr.ap-northeast-1.amazonaws.com/ruby .
--build-argを環境変数で指定してあげれば環境差異を吸収できる
備考
- ARGはFROMの前における唯一の命令
- FROMの前に宣言したARGはFROMでしか使えない。FROM以降で再度ARGを使いたい場合、もう一度定義してあげる
ARG BASE_IMAGE
FROM ${BASE_IMAGE}:latest
ARG BASE_IMAGE
RUN hogehoge